sys.dm_exec_trigger_stats (Transact-SQL)
Devuelve estadísticas de rendimiento de agregado para los desencadenadores en memoria caché. La vista contiene una fila por cada desencadenador y la vigencia de la fila es el tiempo que el desencadenador permanece en memoria caché. Cuando se quita un desencadenador de la memoria caché, la fila correspondiente se elimina de esta vista. En ese momento, se provoca un evento de seguimiento SQL de estadísticas de rendimiento similar a sys.dm_exec_query_stats.
Nombre de columna |
Tipo de datos |
Descripción |
---|---|---|
database_id |
int |
Identificador de base de datos en que reside el desencadenador. |
object_id |
int |
Número de identificación del objeto del desencadenador. |
type |
char(2) |
Tipo del objeto: TA = Desencadenador de ensamblado (CLR) TR = Desencadenador SQL |
Type_desc |
nvarchar(60) |
Descripción del tipo del objeto: CLR_TRIGGER SQL_TRIGGER |
sql_handle |
varbinary(64) |
Se puede utilizar para establecer una correlación con las consultas en sys.dm_exec_query_stats que se ejecutaron desde el interior de este desencadenador. |
plan_handle |
varbinary(64) |
Identificador del plan en memoria. Este identificador es transitorio y permanece constante sólo mientras el plan permanece en la caché. Este valor se puede usar con la vista de administración dinámica de sys.dm_exec_cached_plans: |
cached_time |
datetime |
Momento en que el desencadenador se agregó a la caché. |
last_execution_time |
datetime |
Última vez que se ejecutó el desencadenador vez. |
execution_count |
bigint |
Número de veces que se ha ejecutado el desencadenador desde que se compiló por última vez. |
total_worker_time |
bigint |
Tiempo total de CPU, en microsegundos, consumido por las ejecuciones de este desencadenador desde que se compiló. |
last_worker_time |
bigint |
Tiempo de CPU, en microsegundos, consumido la última vez que se ejecutó el desencadenador. |
min_worker_time |
bigint |
Tiempo máximo de CPU, en microsegundos, consumido por este desencadenador durante una ejecución. |
max_worker_time |
bigint |
Tiempo máximo de CPU, en microsegundos, consumido por este desencadenador durante una ejecución. |
total_physical_reads |
bigint |
Número total de lecturas físicas realizadas por las ejecuciones de este desencadenador desde que se compiló. |
last_physical_reads |
bigint |
Número de lecturas físicas realizadas la última vez que se ejecutó el desencadenador. |
min_physical_reads |
bigint |
Número mínimo de lecturas físicas realizadas por este desencadenador durante una ejecución. |
max_physical_reads |
bigint |
Número máximo de lecturas físicas realizadas por este desencadenador durante una ejecución. |
total_logical_writes |
bigint |
Número total de escrituras lógicas realizadas por las ejecuciones de este desencadenador desde que se compiló. |
last_logical_writes |
bigint |
Número de escrituras lógicas realizadas la última vez que se ejecutó el desencadenador. |
min_logical_writes |
bigint |
Número mínimo de escrituras lógicas realizadas por este desencadenador durante una ejecución. |
max_logical_writes |
bigint |
Número máximo de escrituras lógicas realizadas por este desencadenador durante una ejecución. |
total_logical_reads |
bigint |
Número total de lecturas lógicas realizadas por las ejecuciones de este desencadenador desde que se compiló. |
last_logical_reads |
bigint |
Número de lecturas lógicas realizadas la última vez que se ejecutó el desencadenador. |
min_logical_reads |
bigint |
Número mínimo de lecturas lógicas realizadas por este desencadenador durante una ejecución. |
max_logical_reads |
bigint |
Número máximo de lecturas lógicas realizadas por este desencadenador durante una ejecución. |
total_elapsed_time |
bigint |
Tiempo total transcurrido, en microsegundos, hasta la finalización de las ejecuciones de este desencadenador. |
last_elapsed_time |
bigint |
Tiempo transcurrido, en microsegundos, hasta la finalización de la ejecución más reciente de este desencadenador. |
min_elapsed_time |
bigint |
Tiempo mínimo transcurrido, en microsegundos, hasta la finalización de cualquier ejecución de este desencadenador. |
max_elapsed_time |
bigint |
Tiempo máximo transcurrido, en microsegundos, hasta la finalización de cualquier ejecución de este desencadenador. |
Permisos
Requiere el permiso VIEW SERVER STATE en el servidor.
Notas
Cuando se completa una consulta, se actualizan las estadísticas en la vista.
Ejemplos
En el siguiente ejemplo se devuelve información acerca de los diez desencadenadores que hacen un mayor uso de la CPU ordenados por el tiempo medio transcurrido.
PRINT '--top 10 CPU consuming triggers '
SELECT TOP 10 d.object_id, d.database_id, DB_NAME(database_id) AS 'database_name',
OBJECT_NAME(object_id, database_id) AS 'trigger_name', d.cached_time,
d.last_execution_time, d.total_elapsed_time,
d.total_elapsed_time/d.execution_count AS [avg_elapsed_time],
d.last_elapsed_time, d.execution_count
FROM sys.dm_exec_trigger_stats AS d
ORDER BY [total_worker_time] DESC;
Vea también
Referencia
Historial de cambios
Contenido actualizado |
---|
Se ha reemplazado el ejemplo por código actualizado. |