Modelli di SQL Server Profiler
È possibile utilizzare SQL Server Profiler per creare modelli per la definizione delle classi di eventi e delle colonne di dati da includere nelle tracce. Dopo aver definito e salvato il modello, è possibile eseguire una traccia per la registrazione dei dati relativi a ogni classe di evento selezionata. È possibile utilizzare un modello per più tracce. Il modello non viene eseguito direttamente.
SQL Server Profiler offre modelli di tracce predefiniti che consentono di configurare facilmente le classi di eventi da utilizzare più frequentemente per tracce specifiche. Il modello Standard, ad esempio, consente di creare una traccia generica per la registrazione degli accessi, delle disconnessioni, dei batch completati e delle informazioni per la connessione. È possibile utilizzare questo modello per l'esecuzione di tracce senza modifiche oppure come punto di partenza per modelli aggiuntivi con configurazioni di evento diverse.
Nota
Oltre che da modelli predefiniti, SQL Server Profiler consente inoltre di creare le tracce da un modello vuoto, che per impostazione predefinita non include classi di eventi. L'utilizzo di un modello di traccia vuoto può essere utile quando una traccia pianificata non somiglia alle configurazioni di nessuno dei modelli predefiniti.
SQL Server Profiler è in grado di tracciare vari tipi di server. Ad esempio è possibile tracciare SQL Server 2000, Analysis Services, SQL Server 2005 e versioni successive. Tuttavia, le classi di eventi che è possibile includere non sono le stesse per ogni tipo di server. Pertanto, SQL Server Profiler mantiene modelli diversi per server diversi e rende disponibile il modello specifico corrispondente al tipo server selezionato.
Modelli predefiniti
Oltre al modello Standard (predefinito), SQL Server Profiler include vari modelli predefiniti per il monitoraggio di determinati tipi di eventi. Nella tabella seguente vengono elencati i modelli predefiniti, il loro scopo e le classi di eventi per le quali acquisiscono informazioni.
Nome modello |
Scopo del modello |
Classi di eventi |
---|---|---|
SP_Counts |
Acquisisce il comportamento di esecuzione delle stored procedure nel tempo. |
SP:Starting |
Standard |
Punto di partenza generico per la creazione di una traccia. Acquisisce tutte le stored procedure e i batch di Transact-SQL eseguiti. Utilizzabile per il monitoraggio dell'attività generale del server di database. |
Audit Login Audit Logout ExistingConnection RPC:Completed SQL:BatchCompleted SQL:BatchStarting |
TSQL |
Acquisisce tutte le istruzioni Transact-SQL inviate a SQL Server dai client e l'ora dell'invio. Utilizzabile per il debug delle applicazioni client. |
Audit Login Audit Logout ExistingConnection RPC:Starting SQL:BatchStarting |
TSQL_Duration |
Acquisisce tutte le istruzioni Transact-SQL inviate a SQL Server dai client e il relativo tempo di esecuzione (in millisecondi), quindi le raggruppa per durata. Utilizzabile per identificare query lente. |
RPC:Completed SQL:BatchCompleted |
TSQL_Grouped |
Acquisisce tutte le istruzioni Transact-SQL inviate a SQL Server e l'ora dell'invio. Raggruppa le informazioni per utente o client che ha inviato l'istruzione. Utilizzabile per analizzare le query dal punto di vista di un client o utente particolare. |
Audit Login Audit Logout ExistingConnection RPC:Starting SQL:BatchStarting |
TSQL_Locks |
Acquisisce tutte le istruzioni Transact-SQL inviate a SQL Server dai client insieme a eventi del blocco insoliti. Utilizzabile per risolvere eventi di deadlock, di timeout di blocco e di escalation blocchi. |
Blocked Process Report SP:StmtCompleted SP:StmtStarting SQL:StmtCompleted SQL:StmtStarting Deadlock Graph (utilizzabile nell'istanza di SQL Server 2005 o SQL Server 2008). Lock:Cancel Lock:Deadlock Lock:Deadlock Chain Lock:Escalation Lock:Timeout (utilizzabile nell'istanza di SQL Server 2000). Lock:Timeout (timeout>0) (utilizzabile nell'istanza di SQL Server 2005 o SQL Server 2008). |
TSQL_Replay |
Acquisisce informazioni dettagliate sulle istruzioni Transact-SQL necessarie se la traccia verrà riprodotta. Utilizzabile per eseguire l'ottimizzazione iterativa, ad esempio per test di benchmark. |
CursorClose CursorExecute CursorOpen CursorPrepare CursorUnprepare Audit Login Audit Logout Existing Connection RPC Output Parameter RPC:Completed RPC:Starting Exec Prepared SQL Prepare SQL SQL:BatchCompleted SQL:BatchStarting |
TSQL_SPs |
Acquisisce informazioni dettagliate relative a tutte le stored procedure in esecuzione. Utilizzabile per analizzare i passaggi dei componenti delle stored procedure. Aggiungere l'evento SP:Recompile se si ritiene che le stored procedure vengano ricompilate. |
Audit Login Audit Logout ExistingConnection RPC:Starting SP:Completed SP:Starting SP:StmtStarting SQL:BatchStarting |
Tuning |
Acquisisce informazioni sulle stored procedure e l'esecuzione dei batch Transact-SQL. Consente di generare un output di traccia utilizzabile in Ottimizzazione guidata Motore di database come carico di lavoro per l'ottimizzazione dei database. |
RPC:Completed SP:StmtCompleted SQL:BatchCompleted |
Per informazioni sulle classi di eventi, vedere Guida di riferimento alla classe di evento SQL Server.
Modello predefinito
SQL Server Profiler specifica automaticamente il modello Standard come modello predefinito applicato a qualsiasi nuova traccia. Tuttavia è possibile modificare il modello predefinito in qualsiasi altro modello, predefinito o definito dall'utente. Per modificare il modello predefinito, selezionare la casella di controllo Usa come modello predefinito per il tipo di server selezionato quando si crea o modifica un modello utilizzando la scheda Generale della finestra di dialogo Proprietà modello di traccia.
Per spostarsi alla finestra di dialogo Proprietà modello di traccia scegliere Modelli dal menu File di SQL Server Profiler e quindi fare clic su Nuovo modello o su Modifica modello.
Nota
Il modello predefinito è specifico per un determinato tipo di server. La modifica del modello predefinito per un tipo di server non ha effetto sul modello predefinito per gli altri tipi. Per ulteriori informazioni sull'impostazione di un modello predefinito per un server specifico, vedere Procedura: Impostazione dei valori predefiniti per una definizione di traccia (SQL Server Profiler).