尝试在 SQL Server 2008 中创建扩展事件以捕获被阻止的进程报告。这是我正在使用的脚本:
CREATE EVENT SESSION [IA_BlockedProcesses] ON SERVER
ADD EVENT sqlserver.blocked_process_report(
ACTION(sqlserver.client_app_name,
sqlserver.client_hostname,
sqlserver.database_name)),
ADD EVENT sqlserver.xml_deadlock_report (
ACTION(sqlserver.client_app_name,
sqlserver.client_hostname,
sqlserver.database_name))
ADD TARGET package0.asynchronous_file_target
(SET filename = N'c:\Isaac\blocked_process.xel',
metadatafile = N'c:\Isaac\blocked_process.xem',
max_file_size = (65536),
max_rollover_files = 5)
WITH (MAX_DISPATCH_LATENCY = 5SECONDS)
GO
当我运行脚本时,我得到了这个错误:
消息 25623,级别 16,状态 1,第 7 行
事件名称“sqlserver.blocked_process_report”无效,或找不到对象
我相信要么我没有正确处理这个问题,要么blocked_process_report
在这个版本的 SQL Server 中不可用。
当我运行此查询时:
SELECT *
FROM sys.dm_xe_objects
WHERE name = 'blocked_process_report'
...没有结果。
谁能确定地为我确认 A)blocked_process_report 是否确实在 SQL Server 2008 中可用,以及 B)如果我的上述代码需要更改?
提前致谢