Condividi tramite


Classe di evento Performance Statistics

La classe di evento Performance Statistics può essere utilizzata per monitorare le prestazioni di query, stored procedure e trigger in esecuzione. Ciascuna delle sei sottoclassi di evento indica un evento generato nel corso di query, stored procedure e trigger all'interno del sistema. L'utilizzo di tali sottoclassi di evento in combinazione con le DMV sys.dm_exec_query_stats, sys.dm_exec_procedure_stats e sys.dm_exec_trigger_stats associate consente di ricostituire la cronologia delle prestazioni di qualsiasi query, stored procedure o trigger specifico.

Colonne di dati della classe di evento Performance Statistics

Nelle tabelle seguenti vengono descritte le colonne dei dati delle classi di evento associate a ognuna delle sottoclassi di evento seguenti: EventSubClass 0, EventSubClass 1, EventSubClass 2, EventSubClass 3, EventSubClass 4 e EventSubClass 5.

EventSubClass 0

Nome colonna di dati

Tipo di dati

Descrizione

ID colonna

Filtrabile

BigintData1

bigint

NULL

52

BinaryData

image

NULL

2

DatabaseID

int

ID del database specificato nell'istruzione di database USE oppure il database predefinito se per un'istanza specifica l'istruzione di database USE non è stata eseguita. Se la colonna di dati ServerName viene catturata nella traccia e il server è disponibile SQL Server Profiler visualizza il nome del database. Determinare il valore per un database utilizzando la funzione DB_ID.

3

EventSequence

int

Sequenza di un determinato evento all'interno della richiesta.

51

No

EventSubClass

int

Tipo di sottoclasse di evento.

0 = Nuovo testo SQL del batch non presente nella cache.

I tipi EventSubClass seguenti sono generati nella traccia per batch ad hoc.

Per batch ad hoc con n query, dove n rappresenta un numero:

  • 1 di tipo 0

21

IntegerData2

int

NULL

55

ObjectID

int

NULL

22

Offset

int

NULL

61

PlanHandle

Image

NULL

65

SessionLoginName

nvarchar

Nome dell'account di accesso dell'utente che ha avviato la sessione. Se, ad esempio, si esegue la connessione a SQL Server con l'account di accesso Login1 e si esegue un'istruzione con l'account di accesso Login2, in SessionLoginName viene visualizzato Login1 e in LoginName viene visualizzato Login2. In questa colonna vengono visualizzati sia gli account di accesso di SQL Server che quelli di Windows.

64

SPID

int

ID della sessione in cui è stato generato l'evento.

12

SqlHandle

image

Handle SQL utilizzabile per ottenere il testo SQL del batch tramite la DMV sys.dm_exec_sql_text.

63

StartTime

datetime

Ora di inizio dell'evento, se disponibile.

14

TextData

ntext

Testo SQL del batch.

1

EventSubClass 1

Nome colonna di dati

Tipo di dati

Descrizione

ID colonna

Filtrabile

BigintData1

bigint

Numero cumulativo di ricompilazioni del piano.

52

BinaryData

image

XML binario del piano compilato.

2

DatabaseID

int

ID del database specificato nell'istruzione di database USE oppure il database predefinito se per un'istanza specifica l'istruzione di database USE non è stata eseguita. Se la colonna di dati ServerName viene catturata nella traccia e il server è disponibile SQL Server Profiler visualizza il nome del database. Determinare il valore per un database utilizzando la funzione DB_ID.

3

EventSequence

int

Sequenza di un determinato evento all'interno della richiesta.

51

No

SessionLoginName

nvarchar

Nome dell'account di accesso dell'utente che ha avviato la sessione. Se, ad esempio, si esegue la connessione a SQL Server con l'account di accesso Login1 e si esegue un'istruzione con l'account di accesso Login2, in SessionLoginName viene visualizzato Login1 e in LoginName viene visualizzato Login2. In questa colonna vengono visualizzati sia gli account di accesso di SQL Server che quelli di Windows.

64

EventSubClass

int

Tipo di sottoclasse di evento.

1 = Le query incluse in una stored procedure sono state compilate.

I tipi EventSubClass seguenti sono generati nella traccia per stored procedure.

Per stored procedure con n query, dove n rappresenta un numero:

  • n di tipo 1

21

IntegerData2

int

Fine dell'istruzione nella stored procedure.

-1 per la fine della stored procedure.

55

ObjectID

int

ID dell'oggetto assegnato dal sistema.

22

Offset

int

Offset iniziale dell'istruzione nella stored procedure o nel batch.

61

SPID

int

ID della sessione in cui è stato generato l'evento.

12

SqlHandle

image

Handle SQL utilizzabile per ottenere il testo SQL della stored procedure tramite la DMV dm_exec_sql_text.

63

StartTime

datetime

Ora di inizio dell'evento, se disponibile.

14

TextData

ntext

NULL

1

PlanHandle

image

Handle del piano compilato per la stored procedure. Utilizzabile per ottenere il piano XML tramite la DMV sys.dm_exec_query_plan.

65

ObjectType

int

Valore che rappresenta il tipo di oggetto coinvolto nell'evento.

8272 = stored procedure

28

BigintData2

bigint

Quantità di memoria totale, espressa in kilobyte, utilizzata durante la compilazione.

53

CPU

int

Tempo totale di CPU, espresso in millisecondi, dedicato alla compilazione.

18

Duration

int

Tempo totale, espresso in microsecondi, dedicato alla compilazione.

13

IntegerData

int

Dimensioni, espresse in kilobyte, del piano compilato.

25

EventSubClass 2

Nome colonna di dati

Tipo di dati

Descrizione

ID colonna

Filtrabile

BigintData1

bigint

Numero cumulativo di ricompilazioni del piano.

52

BinaryData

image

XML binario del piano compilato.

2

DatabaseID

int

ID del database specificato nell'istruzione di database USE oppure il database predefinito se per un'istanza specifica l'istruzione di database USE non è stata eseguita. Se la colonna di dati ServerName viene catturata nella traccia e il server è disponibile SQL Server Profiler visualizza il nome del database. Determinare il valore per un database utilizzando la funzione DB_ID.

3

EventSequence

int

Sequenza di un determinato evento all'interno della richiesta.

51

No

SessionLoginName

nvarchar

Nome dell'account di accesso dell'utente che ha avviato la sessione. Se, ad esempio, si esegue la connessione a SQL Server con l'account di accesso Login1 e si esegue un'istruzione con l'account di accesso Login2, in SessionLoginName viene visualizzato Login1 e in LoginName viene visualizzato Login2. In questa colonna vengono visualizzati sia gli account di accesso di SQL Server che quelli di Windows.

64

EventSubClass

int

Tipo di sottoclasse di evento.

2 = Le query incluse in un'istruzione SQL ad hoc sono state compilate.

I tipi EventSubClass seguenti sono generati nella traccia per batch ad hoc.

Per batch ad hoc con n query, dove n rappresenta un numero:

  • n di tipo 2

21

IntegerData2

int

Fine dell'istruzione nel batch.

-1 per la fine del batch.

55

ObjectID

int

N/D

22

Offset

int

Offset iniziale dell'istruzione nel batch.

0 per l'inizio del batch.

61

SPID

int

ID della sessione in cui è stato generato l'evento.

12

SqlHandle

image

Handle SQL. Utilizzabile per ottenere il testo SQL del batch tramite la DMV dm_exec_sql_text .

63

StartTime

datetime

Ora di inizio dell'evento, se disponibile.

14

TextData

ntext

NULL

1

PlanHandle

image

Handle del piano compilato per il batch. Utilizzabile per ottenere il piano XML del batch tramite la DMV dm_exec_query_plan.

65

BigintData2

bigint

Quantità di memoria totale, espressa in kilobyte, utilizzata durante la compilazione.

53

CPU

int

Tempo totale di CPU, espresso in microsecondi, dedicato alla compilazione.

18

Duration

int

Tempo totale, espresso in millisecondi, dedicato alla compilazione.

13

IntegerData

int

Dimensioni, espresse in kilobyte, del piano compilato.

25

EventSubClass 3

Nome colonna di dati

Tipo di dati

Descrizione

ID colonna

Filtrabile

BigintData1

bigint

Numero cumulativo di ricompilazioni del piano.

52

BinaryData

image

NULL

2

DatabaseID

int

ID del database specificato nell'istruzione di database USE oppure il database predefinito se per un'istanza specifica l'istruzione di database USE non è stata eseguita. Se la colonna di dati ServerName viene catturata nella traccia e il server è disponibile SQL Server Profiler visualizza il nome del database. Determinare il valore per un database utilizzando la funzione DB_ID.

3

EventSequence

int

Sequenza di un determinato evento all'interno della richiesta.

51

No

SessionLoginName

nvarchar

Nome dell'account di accesso dell'utente che ha avviato la sessione. Se, ad esempio, si esegue la connessione a SQL Server con l'account di accesso Login1 e si esegue un'istruzione con l'account di accesso Login2, in SessionLoginName viene visualizzato Login1 e in LoginName viene visualizzato Login2. In questa colonna vengono visualizzati sia gli account di accesso di SQL Server che quelli di Windows.

64

EventSubClass

int

Tipo di sottoclasse di evento.

3 = Una query memorizzata nella cache è stata distrutta e anche i dati relativi alla cronologia delle prestazioni associati al piano stanno per essere distrutti.

I tipi EventSubClass seguenti sono generati nella traccia.

Per batch ad hoc con n query, dove n rappresenta un numero:

  • 1 di tipo 3 quando la query viene scaricata dalla cache

Per stored procedure con n query, dove n rappresenta un numero:

  • 1 di tipo 3 quando la query viene scaricata dalla cache.

21

IntegerData2

int

Fine dell'istruzione nella stored procedure o nel batch.

-1 per la fine della stored procedure o del batch.

55

ObjectID

int

NULL

22

Offset

int

Offset iniziale dell'istruzione nella stored procedure o nel batch.

0 per l'inizio della stored procedure o del batch.

61

SPID

int

ID della sessione in cui è stato generato l'evento.

12

SqlHandle

image

Handle SQL utilizzabile per ottenere il testo SQL della stored procedure o del batch tramite la DMV dm_exec_sql_text.

63

StartTime

datetime

Ora di inizio dell'evento, se disponibile.

14

TextData

ntext

QueryExecutionStats

1

PlanHandle

image

Handle del piano compilato per la stored procedure o il batch. Utilizzabile per ottenere il piano XML tramite la DMV dm_exec_query_plan.

65

GroupID

int

ID del gruppo del carico di lavoro in cui viene generato l'evento di Traccia SQL.

66

EventSubClass 4

Nome colonna di dati

Tipo di dati

Descrizione

ID colonna

Filtrabile

BigintData1

bigint

NULL

52

BinaryData

image

NULL

2

DatabaseID

int

ID del database in cui è contenuta la stored procedure specifica.

3

EventSequence

int

Sequenza di un determinato evento all'interno della richiesta.

51

No

SessionLoginName

nvarchar

Nome dell'account di accesso dell'utente che ha avviato la sessione. Se, ad esempio, si esegue la connessione a SQL Server con l'account di accesso Login1 e si esegue un'istruzione con l'account di accesso Login2, in SessionLoginName viene visualizzato Login1 e in LoginName viene visualizzato Login2. In questa colonna vengono visualizzati sia gli account di accesso di SQL Server che quelli di Windows.

64

EventSubClass

int

Tipo di sottoclasse di evento.

4 = Una stored procedure memorizzata nella cache è stata rimossa dalla cache e i dati relativi alla cronologia delle prestazioni associati verranno distrutti.

21

IntegerData2

int

NULL

55

ObjectID

int

ID della stored procedure. Uguale alla colonna object_id in sys.procedures.

22

Offset

int

NULL

61

SPID

int

ID della sessione in cui si è verificato l'evento.

12

SqlHandle

image

Handle SQL utilizzabile per ottenere il testo SQL della stored procedure eseguita tramite la DMV dm_exec_sql_text.

63

StartTime

datetime

Ora di inizio dell'evento, se disponibile.

14

TextData

ntext

ProcedureExecutionStats

1

PlanHandle

image

Handle del piano compilato per la stored procedure. Utilizzabile per ottenere il piano XML tramite la DMV dm_exec_query_plan.

65

GroupID

int

ID del gruppo del carico di lavoro in cui viene generato l'evento di Traccia SQL.

66

EventSubClass 5

Nome colonna di dati

Tipo di dati

Descrizione

ID colonna

Filtrabile

BigintData1

bigint

NULL

52

BinaryData

image

NULL

2

DatabaseID

int

ID del database in cui è contenuto il trigger specifico.

3

EventSequence

int

Sequenza di un determinato evento all'interno della richiesta.

51

No

SessionLoginName

nvarchar

Nome dell'account di accesso dell'utente che ha avviato la sessione. Se, ad esempio, si esegue la connessione a SQL Server con l'account di accesso Login1 e si esegue un'istruzione con l'account di accesso Login2, in SessionLoginName viene visualizzato Login1 e in LoginName viene visualizzato Login2. In questa colonna vengono visualizzati sia gli account di accesso di SQL Server che quelli di Windows.

64

EventSubClass

int

Tipo di sottoclasse di evento.

5 = Un trigger memorizzato nella cache è stata rimosso dalla cache e i dati relativi alla cronologia delle prestazioni associati verranno distrutti.

21

IntegerData2

int

NULL

55

ObjectID

int

ID del trigger. Uguale alla colonna object_id nelle viste del catalogo sys.triggers/sys.server_triggers.

22

Offset

int

NULL

61

SPID

int

ID della sessione in cui si è verificato l'evento.

12

SqlHandle

image

Handle SQL utilizzabile per ottenere il testo SQL del trigger tramite la DMV dm_exec_sql_text.

63

StartTime

datetime

Ora di inizio dell'evento, se disponibile.

14

TextData

ntext

TriggerExecutionStats

1

PlanHandle

image

Handle del piano compilato per il trigger. Utilizzabile per ottenere il piano XML tramite la DMV dm_exec_query_plan.

65

GroupID

int

ID del gruppo di carico di lavoro in cui viene generato l'evento di Traccia SQL.

66

Vedere anche

Riferimento

sp_trace_setevent (Transact-SQL)

Classe di evento Showplan XML For Query Compile

Funzioni e viste a gestione dinamica (Transact-SQL)

Concetti

Eventi estesi