Procedura: utilizzare un database di monitoraggio non SQL Server

Nella procedura riportata di seguito viene illustrato come utilizzare un database di monitoraggio non SQL Server in Microsoft AppFabric 1.1 per Windows Server. Se si utilizza un database di SQL Server, le viste e la tabella di gestione temporanea vengono create tramite il processo di configurazione di AppFabric. Con un database non SQL Server sarà necessario creare queste entità di database utilizzando qualsiasi funzionalità del programma di database non SQL che consenta di eseguire questa operazione.

Configurazione di un database di monitoraggio non SQL

  1. Implementare la tabella di gestione temporanea e le viste pubbliche di monitoraggio. Scegliere un meccanismo specifico di un database non SQL Server dal fornitore di database per creare la tabella di gestione temporanea e le viste. La tabella di gestione temporanea e le viste con i tipi previsti sono specificate in Viste e tabelle del database di monitoraggio. I tipi effettivi possono essere specifici del database, ma tali da consentire al provider ADO di convertirli in tipi di .NET Framework. Gli strumenti di monitoraggio del Dashboard AppFabric funzioneranno solo se il risultato della query al tipo di database restituisce un tipo .NET Framework previsto. Ad esempio, nvarchar di SQL Server esegue il mapping al tipo di .NET Framework String e anche i tipi varchar e char dei database non SQL Server eseguono il mapping al tipo di .NET Framework String.

  2. Popolare le viste pubbliche utilizzando i dati della tabella di gestione temporanea. Il Servizio di raccolta eventi scrive i dati eventi nelle colonne della tabella di gestione temporanea corrispondenti a ciascun evento emesso da un servizio WCF o WF. Nell'implementazione del database non SQL Server i dati vengono quindi spostati dalla tabella di gestione temporanea alle tabelle che supportano le viste pubbliche tramite qualsiasi mezzo appropriato, ad esempio un processo o un trigger di database. Il mapping che definisce il modo in cui i dati di ogni tipo di evento popolano le viste pubbliche è documentato in Mapping degli eventi del database di monitoraggio. Per gli eventi emessi dai servizi WCF e WF, il Servizio di raccolta eventi effettua la raccolta di tali eventi e li scrive nella tabella di gestione temporanea ASStagingTable del database di monitoraggio. ASStagingTable è una tabella di archiviazione degli eventi temporanea. Per utilizzare i dati eventi nel Dashboard AppFabric, è necessario esporre i dati della tabella ASStagingTable tramite la vista pubblica corrispondente a un tipo di evento. Nell'implementazione del database non SQL Server i dati devono essere spostati dalla tabella ASStagingTable alle tabelle che supportano le viste pubbliche tramite l'utilizzo di un meccanismo appropriato per tale implementazione, ad esempio un processo o un trigger di database. Il mapping che definisce il modo in cui i dati di ogni tipo di evento popolano le viste pubbliche è documentato in Mapping degli eventi del database di monitoraggio.

    Di seguito viene fornito un esempio relativo alla procedura descritta e alla operazioni che è necessario eseguire. Quando viene richiamata un'operazione del servizio WCF, il runtime .NET emette un evento 214 - OperationCompleted (https://go.microsoft.com/fwlink/?LinkId=187225) (Operazione WCF completata). Quando si verifica tale evento, le colonne della tabella di gestione temporanea applicabili all'evento Operazione WCF completata vengono popolate con i valori dell'evento raccolto dal Servizio di raccolta eventi. I dati della tabella di gestione temporanea vengono quindi mappati in modo da popolare le colonne delle viste ASEventSources, ASWcfEvents e ASEvents. Questi dati vengono letti dal Dashboard AppFabric e visualizzati nella Tracked Events Page. Per l'evento OperationCompleted, vedere la sezione ID evento 214 nel documento di mapping in Mapping degli eventi del database di monitoraggio. In questa sezione viene indicato il modo in cui vengono esposti i dati della tabella di gestione temporanea relativa a questo evento. Oltre alle colonne comuni scritte nella tabella di gestione temporanea (vedere la sezione Mapping comune a tutti gli eventi nel documento relativo al mapping), vengono aggiunte due colonne, MethodName e Duration. Queste colonne vengono mappate in base all'implementazione specifica nelle corrispondenti tabelle temporanee che supportano le viste ASEventSources, ASWcfEvents e ASEvents.

    Nota

    Nell'argomento Mapping degli eventi del database di monitoraggio è incluso un subset di eventi di mapping. Il set di mapping completo è disponibile per il download nell'Area download Microsoft. Il file scaricabile contiene un documento di mapping per ciascun ID evento in cui sono specificate le colonne della tabella ASStagingTable che vengono popolate quando il Servizio di raccolta eventi scrive una riga relativa all'evento. Sono inoltre indicate le viste che espongono i dati relativi all'evento ed è illustrata la modalità di mapping dei dati dalla tabella ASStagingTable alle colonne di una vista.

    Nota

    Nell'implementazione SQL Server del database di monitoraggio le viste pubbliche sono basate su tabelle contenenti i dati evento effettivi. Il provider SQL Server sposta i dati dalla tabella di gestione temporanea alle tabelle su cui sono basate le viste pubbliche. In un database non SQL Server il processo eseguito dal provider SQL Server dovrà essere effettuato manualmente.

  3. Assicurarsi che la stringa di connessione per il nuovo database di monitoraggio sia registrata nel file Web.config radice. In questo modo Servizio di raccolta eventi può utilizzare questa stringa di connessione per scrivere eventi nel database di monitoraggio.

  4. Assicurarsi che l'identità di Servizio di raccolta eventi disponga di autorizzazioni di lettura e scrittura nella tabella di gestione temporanea.

  5. Assicurarsi che l'utente che visualizza i dati in IIS con il Dashboard AppFabric disponga della autorizzazioni di lettura per le viste.

  6. Avviare il test eseguendo Servizio di raccolta eventi:

    1. Assicurarsi che la tabella di gestione temporanea venga popolata.

    2. Assicurarsi che le metriche del dashboard funzionino.

    3. Assicurarsi che sia possibile visualizzare gli eventi rilevati.

    4. Assicurarsi che sia possibile visualizzare gli eventi correlati a livello di monitoraggio End-to-End.

Di seguito vengono forniti ulteriori passaggi facoltativi, utili per configurare e aumentare le prestazioni di scrittura eventi in un database non SQL Server:

  • Implementare un provider di copia bulk per il database specifico e registrarlo nel file Web.config radice. In tal modo si permette a Servizio di raccolta eventi di richiamare il provider per scrivere eventi in massa nella tabella di gestione temporanea. Nel caso in cui un provider di copia bulk non fosse registrato, il servizio Raccolta eventi utilizzerà inserimenti batch mediante il provider ADO specifico per il database. Per ulteriori informazioni, vedere Interfaccia di copia bulk del servizio di raccolta eventi.

  • Creare un provider personalizzato per il database non SQL Server da richiamare mediante lo strumento di configurazione di AppFabric. Questo provider è diverso dal provider di copia bulk. Si tratta del provider utilizzato dal programma di installazione per inserire nel Registro di sistema la stringa di connessione per il nuovo database destinato a essere utilizzato da parte di Servizio di raccolta eventi. Anche in questo caso la funzionalità dell'interfaccia utente non è necessaria, ma fornisce un modo semplice per configurare la stringa di connessione del database non SQL Server. Per ulteriori informazioni sull'utilizzo dei provider personalizzati, vedere Procedura: registrare provider personalizzati. Per ulteriori informazioni sullo strumento di configurazione di AppFabric, che può essere facoltativamente avviato alla fine del processo di installazione di AppFabric, vedere Installation Results Page e Configurare AppFabric.

  2012-03-05