Classe de evento Performance Statistics

A classe de evento Performance Statistics pode ser usada para monitorar o desempenho de consultas, procedimentos armazenados e gatilhos que são executados. Cada uma das seis subclasses de evento indica um evento no tempo de vida de consultas, procedimentos armazenados e gatilhos no sistema. Usando a combinação dessas subclasses de evento e as exibições de gerenciamento dinâmico sys.dm_exec_query_stats, sys.dm_exec_procedure_stats e sys.dm_exec_trigger_stats associadas, você pode reconstituir o histórico de desempenho de qualquer consulta, procedimento armazenado ou gatilho específico.

Colunas de dados da classe de evento Performance Statistics

As seguintes tabelas descrevem as colunas de dados de classe de evento associadas a cada uma destas subclasses de evento: EventSubClass 0, EventSubClass 1, EventSubClass 2, EventSubClass 3, EventSubClass 4 e EventSubClass 5.

EventSubClass 0

Nome da coluna de dados

Tipo de dados

Descrição

ID da coluna

Filtrável

BigintData1

bigint

NULL

52

Sim

BinaryData

image

NULL

2

Sim

DatabaseID

int

ID do banco de dados especificado pela instrução USE de database ou o banco de dados padrão se nenhuma instrução USE de database tiver sido emitida para uma determinada instância. O SQL Server Profiler exibirá o nome do banco de dados se a coluna de dados ServerName for capturada no rastreamento e o servidor estiver disponível. Determine o valor para um banco de dados usando a função DB_ID.

3

Sim

EventSequence

int

Sequência de um determinado evento na solicitação.

51

Não

EventSubClass

int

Tipo de subclasse de evento.

0 = Novo texto SQL de lote que atualmente não está presente no cache.

Os tipos de EventSubClass a seguir são gerados no rastreamento para lotes ad hoc.

Para lotes ad hoc com n número de consultas:

  • 1 do tipo 0

21

Sim

IntegerData2

int

NULL

55

Sim

ObjectID

int

NULL

22

Sim

Offset

int

NULL

61

Sim

PlanHandle

Image

NULL

65

Sim

SessionLoginName

nvarchar

Nome de logon do usuário que originou a sessão. Por exemplo, para se conectar ao SQL Server usando o Login1 e executar uma instrução como Login2, o SessionLoginName mostrará o Login1 e o LoginName mostrará o Login2. Essa coluna exibe logons do SQL Server e do Windows.

64

Sim

SPID

int

Identificação da sessão em que ocorreu o evento.

12

Sim

SqlHandle

image

Identificador SQL que pode ser usado para obter o texto SQL do lote usando a exibição de gerenciamento dinâmico sys.dm_exec_sql_text.

63

Sim

StartTime

datetime

Hora de início do evento, se disponível.

14

Sim

TextData

ntext

Texto SQL do lote.

1

Sim

EventSubClass 1

Nome da coluna de dados

Tipo de dados

Descrição

ID da coluna

Filtrável

BigintData1

bigint

O número cumulativo de vezes que esse plano foi recompilado.

52

Sim

BinaryData

image

O XML binário do plano compilado.

2

Sim

DatabaseID

int

ID do banco de dados especificado pela instrução USE de database ou o banco de dados padrão se nenhuma instrução USE de database tiver sido emitida para uma determinada instância. O SQL Server Profiler exibirá o nome do banco de dados se a coluna de dados ServerName for capturada no rastreamento e o servidor estiver disponível. Determine o valor para um banco de dados usando a função DB_ID.

3

Sim

EventSequence

int

Sequência de um determinado evento na solicitação.

51

Não

SessionLoginName

nvarchar

Nome de logon do usuário que originou a sessão. Por exemplo, se você se conectar ao SQL Server usando o Login1 e executar uma instrução como Login2, SessionLoginName mostrará Login1 e LoginName mostrará Login2. Essa coluna exibe logons do SQL Server e do Windows.

64

Sim

EventSubClass

int

Tipo de subclasse de evento.

1 = Foram compiladas consultas dentro de um procedimento armazenado.

Os tipos de EventSubClass a seguir são gerados no rastreamento para procedimentos armazenados.

Para procedimentos armazenados com n número de consultas:

  • n número de tipo 1

21

Sim

IntegerData2

int

Término da instrução do procedimento armazenado.

-1 para o término do procedimento armazenado.

55

Sim

ObjectID

int

ID de objeto atribuída pelo sistema.

22

Sim

Offset

int

O deslocamento inicial da instrução no lote ou procedimento armazenado.

61

Sim

SPID

int

Identificação da sessão em que ocorreu o evento.

12

Sim

SqlHandle

image

Identificador SQL que pode ser usado para obter o texto SQL do procedimento armazenado usando a exibição de gerenciamento dinâmico dm_exec_sql_text.

63

Sim

StartTime

datetime

Hora de início do evento, se disponível.

14

Sim

TextData

ntext

NULL

1

Sim

PlanHandle

image

O identificador do plano compilado para o procedimento armazenado. Esse identificador pode ser usado para obter o plano XML usando a exibição de gerenciamento dinâmico sys.dm_exec_query_plan.

65

Sim

ObjectType

int

Um valor que representa o tipo do objeto envolvido no evento.

8272 = procedimento armazenado

28

Sim

BigintData2

bigint

Memória total, em quilobytes, usada durante a compilação.

53

Sim

CPU

int

Tempo total de CPU, em milissegundos, gasto durante a compilação.

18

Sim

Duration

int

Tempo total, em milissegundos, gasto durante a compilação.

13

Sim

IntegerData

int

O tamanho, em quilobytes, do plano compilado.

25

Sim

EventSubClass 2

Nome da coluna de dados

Tipo de dados

Descrição

ID da coluna

Filtrável

BigintData1

bigint

O número cumulativo de vezes que esse plano foi recompilado.

52

Sim

BinaryData

image

O XML binário do plano compilado.

2

Sim

DatabaseID

int

ID do banco de dados especificado pela instrução USE de database ou o banco de dados padrão se nenhuma instrução USE de database tiver sido emitida para uma determinada instância. O SQL Server Profiler exibirá o nome do banco de dados se a coluna de dados ServerName for capturada no rastreamento e o servidor estiver disponível. Determine o valor para um banco de dados usando a função DB_ID.

3

Sim

EventSequence

int

Sequência de um determinado evento na solicitação.

51

Não

SessionLoginName

nvarchar

Nome de logon do usuário que originou a sessão. Por exemplo, se você se conectar ao SQL Server usando o Login1 e executar uma instrução como Login2, SessionLoginName mostrará Login1 e LoginName mostrará Login2. Essa coluna exibe logons do SQL Server e do Windows.

64

Sim

EventSubClass

int

Tipo de subclasse de evento.

2 = Consultas dentro um instrução SQL ad hoc foram compiladas.

Os tipos de EventSubClass a seguir são gerados no rastreamento para lotes ad hoc.

Para lotes ad hoc com n número de consultas:

  • n número de tipo 2

21

Sim

IntegerData2

int

Término da instrução dentro do lote.

-1 para o término do lote.

55

Sim

ObjectID

int

N/A

22

Sim

Offset

int

Deslocamento inicial da instrução do lote.

0 para o início do lote.

61

Sim

SPID

int

Identificação da sessão em que ocorreu o evento.

12

Sim

SqlHandle

image

Identificador SQL. Esse identificador pode ser usado para obter o texto SQL do lote usando a exibição de gerenciamento dinâmico dm_exec_sql_text .

63

Sim

StartTime

datetime

Hora de início do evento, se disponível.

14

Sim

TextData

ntext

NULL

1

Sim

PlanHandle

image

O identificador de plano do plano compilado para o lote. Esse identificador pode ser usado para obter o plano XML de lote, usando a exibição de gerenciamento dinâmico dm_exec_query_plan.

65

Sim

BigintData2

bigint

Memória total, em quilobytes, usada durante a compilação.

53

Sim

CPU

int

Tempo total de CPU, em milissegundos, gasto durante a compilação.

18

Sim

Duration

int

Tempo total, em milissegundos, gasto durante a compilação.

13

Sim

IntegerData

int

O tamanho, em quilobytes, do plano compilado.

25

Sim

EventSubClass 3

Nome da coluna de dados

Tipo de dados

Descrição

ID da coluna

Filtrável

BigintData1

bigint

O número cumulativo de vezes que esse plano foi recompilado.

52

Sim

BinaryData

image

NULL

2

Sim

DatabaseID

int

ID do banco de dados especificado pela instrução USE de database ou o banco de dados padrão se nenhuma instrução USE de database tiver sido emitida para uma determinada instância. O SQL Server Profiler exibirá o nome do banco de dados se a coluna de dados ServerName for capturada no rastreamento e o servidor estiver disponível. Determine o valor para um banco de dados usando a função DB_ID.

3

Sim

EventSequence

int

Sequência de um determinado evento na solicitação.

51

Não

SessionLoginName

nvarchar

Nome de logon do usuário que originou a sessão. Por exemplo, se você se conectar ao SQL Server usando o Login1 e executar uma instrução como Login2, SessionLoginName mostrará Login1 e LoginName mostrará Login2. Essa coluna exibe logons do SQL Server e do Windows.

64

Sim

EventSubClass

int

Tipo de subclasse de evento.

3 = Uma consulta armazenada em cache foi destruída e os dados históricos do desempenho associados ao plano serão destruídos.

Os tipos de EventSubClass a seguir são gerados no rastreamento.

Para lotes ad hoc com n número de consultas:

  • 1 de tipo 3 quando a consulta é liberada do cache

Para procedimentos armazenados com n número de consultas:

  • 1 de tipo 3 quando a consulta é liberada do cache.

21

Sim

IntegerData2

int

Fim da instrução no procedimento armazenado ou lote.

-1 para o final do procedimento armazenado ou lote.

55

Sim

ObjectID

int

NULL

22

Sim

Offset

int

O deslocamento inicial da instrução no lote ou procedimento armazenado.

0 para o início do procedimento armazenado ou lote.

61

Sim

SPID

int

Identificação da sessão em que ocorreu o evento.

12

Sim

SqlHandle

image

Identificador SQL que pode ser usado para obter o procedimento armazenado ou o texto SQL de lote, usando a exibição de gerenciamento dinâmico dm_exec_sql_text.

63

Sim

StartTime

datetime

Hora de início do evento, se disponível.

14

Sim

TextData

ntext

QueryExecutionStats

1

Sim

PlanHandle

image

O identificador de plano do plano compilado para o procedimento armazenado ou lote. Esse identificador pode ser usado para obter o plano XML, usando a exibição de gerenciamento dinâmico dm_exec_query_plan.

65

Sim

GroupID

int

ID do grupo de carga de trabalho no qual o evento de Rastreamento do SQL dispara.

66

Sim

EventSubClass 4

Nome da coluna de dados

Tipo de dados

Descrição

ID da coluna

Filtrável

BigintData1

bigint

NULL

52

Sim

BinaryData

image

NULL

2

Sim

DatabaseID

int

ID do banco de dados em que o procedimento armazenado específico reside.

3

Sim

EventSequence

int

Sequência de um determinado evento na solicitação.

51

Não

SessionLoginName

nvarchar

Nome de logon do usuário que originou a sessão. Por exemplo, se você se conectar ao SQL Server usando o Login1 e executar uma instrução como Login2, SessionLoginName mostrará Login1 e LoginName mostrará Login2. Essa coluna exibe logons do SQL Server e do Windows.

64

Sim

EventSubClass

int

Tipo de subclasse de evento.

4 = Um procedimento armazenado em cache foi removido do cache e os dados de histórico de desempenho associados a ele estão prestes a serem destruídos.

21

Sim

IntegerData2

int

NULL

55

Sim

ObjectID

int

Identificação do procedimento armazenado. Esse comportamento é igual ao da coluna object_id em sys.procedures.

22

Sim

Offset

int

NULL

61

Sim

SPID

int

Identificação da sessão em que ocorreu o evento.

12

Sim

SqlHandle

image

Identificador SQL que pode ser usado para obter o texto SQL do procedimento armazenado que foi executado usando a exibição de gerenciamento dinâmico dm_exec_sql_text.

63

Sim

StartTime

datetime

Hora de início do evento, se disponível.

14

Sim

TextData

ntext

ProcedureExecutionStats

1

Sim

PlanHandle

image

O identificador do plano compilado para o procedimento armazenado. Esse identificador pode ser usado para obter o plano XML, usando a exibição de gerenciamento dinâmico dm_exec_query_plan.

65

Sim

GroupID

int

ID do grupo de carga de trabalho no qual o evento de Rastreamento do SQL dispara.

66

Sim

EventSubClass 5

Nome da coluna de dados

Tipo de dados

Descrição

ID da coluna

Filtrável

BigintData1

bigint

NULL

52

Sim

BinaryData

image

NULL

2

Sim

DatabaseID

int

Identificação do banco de dados no qual o gatilho específico reside.

3

Sim

EventSequence

int

Sequência de um determinado evento na solicitação.

51

Não

SessionLoginName

nvarchar

Nome de logon do usuário que originou a sessão. Por exemplo, se você se conectar ao SQL Server usando o Login1 e executar uma instrução como Login2, SessionLoginName mostrará Login1 e LoginName mostrará Login2. Essa coluna exibe logons do SQL Server e do Windows.

64

Sim

EventSubClass

int

Tipo de subclasse de evento.

5 = Um gatilho armazenado em cache foi removido do cache e os dados de histórico de desempenho associados a ele estão prestes a serem destruídos.

21

Sim

IntegerData2

int

NULL

55

Sim

ObjectID

int

Identificação do gatilho. Isto é mesmo como a object_id coluna em sys.triggers/sys.server_triggers exibições do catálogo.

22

Sim

Offset

int

NULL

61

Sim

SPID

int

Identificação da sessão em que ocorreu o evento.

12

Sim

SqlHandle

image

Identificador SQL que pode ser usado para obter o texto SQL do gatilho usando a exibição de gerenciamento dinâmico dm_exec_sql_text.

63

Sim

StartTime

datetime

Hora de início do evento, se disponível.

14

Sim

TextData

ntext

TriggerExecutionStats

1

Sim

PlanHandle

image

O identificador do plano compilado para o gatilho. Esse identificador pode ser usado para obter o plano XML, usando a exibição de gerenciamento dinâmico dm_exec_query_plan.

65

Sim

GroupID

int

ID do grupo de carga de trabalho no qual o evento de Rastreamento do SQL foi acionado.

66

Sim

Consulte também

Referência

sp_trace_setevent (Transact-SQL)

Classe de evento Showplan XML for Query Compile

Exibições e funções de gerenciamento dinâmico (Transact-SQL)

Conceitos

Eventos estendidos