You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server 2008扩展事件捕获阻塞进程报告报错咨询

关于SQL Server 2008捕获阻塞进程报告的问题解答

A) SQL Server 2008是否支持blocked_process_report扩展事件?

答案是不支持。sqlserver.blocked_process_report这个扩展事件是从SQL Server 2012版本才正式引入的,所以你在SQL Server 2008的sys.dm_xe_objects视图中查询不到该对象是完全正常的,这也是你执行脚本时报错的根本原因。

B) 原始脚本的修改方案及替代实现

由于SQL Server 2008没有专门的blocked_process_report扩展事件,你需要通过以下步骤来实现捕获阻塞进程的需求:

  1. 先配置阻塞阈值
    首先需要开启并设置blocked_process_threshold服务器配置选项,它控制SQL Server生成阻塞进程报告的时间阈值(单位为秒,默认值0表示禁用)。例如设置为5秒:

    sp_configure 'show advanced options', 1;
    RECONFIGURE;
    GO
    sp_configure 'blocked_process_threshold', 5;
    RECONFIGURE;
    GO
    
  2. 选择合适的捕获方式
    你有两种可行的方案:

    • 方案一:使用SQL Server Profiler
      在SQL Server 2008中,可以通过Profiler跟踪Blocked Process Report事件来获取阻塞信息,这是比较直接的方式。
    • 方案二:扩展事件替代方案
      虽然没有专门的阻塞事件,但可以通过sqlserver.wait_info事件结合筛选条件来捕获阻塞相关的等待信息。以下是修改后的扩展事件脚本:
      CREATE EVENT SESSION [IA_BlockedProcesses] ON SERVER 
      ADD EVENT sqlserver.wait_info(
          ACTION(sqlserver.client_app_name, sqlserver.client_hostname, sqlserver.database_name, sqlserver.session_id, sqlserver.sql_text)
          WHERE ([wait_type] LIKE N'LCK_M_%' AND [duration] >= 5000000) -- 5秒,单位为微秒
      ),
      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
      
      说明:
      • 用sqlserver.wait_info事件筛选所有锁等待类型(LCK_M_*),并且等待时长超过你设置的阈值(5秒=5000000微秒)
      • 补充了sqlserver.session_id和sqlserver.sql_text操作,方便你定位具体的阻塞会话和SQL语句
      • 修正了原始脚本中两个ADD EVENT之间缺失的逗号问题(不过这不是导致你报错的主要原因)

内容的提问来源于stack exchange,提问作者LegalEagle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:16:16