Blocked Process Report 事件类

Blocked Process Report 事件类指明某个任务已被阻塞,导致超过指定的时间。 此事件类不包括系统任务和正在等待未发现死锁的资源的任务。

若要配置阈值和报告生成频率,请使用 sp_configure 命令配置“阻塞的进程阈值”选项(以秒为单位进行设置)。 默认情况下,不生成阻塞的进程报告。 有关设置“阻塞的进程阈值”选项的详细信息,请参阅服务器配置选项

有关筛选 Blocked Process Report 事件类返回的数据的信息,请参阅 Filter Events in a Trace (SQL Server Profiler) Set a Trace Filter (Transact-SQL) sp_trace_setfilter (Transact-SQL)

Blocked Process Report 事件类的数据列

数据列名称 数据类型 说明 列 ID 可筛选
DatabaseID int 获取锁所在的数据库的 ID。 SQL Server Profiler 数据列而且服务器可用,则 ServerName 将显示数据库名。 可使用 DB_ID 函数来确定数据库的值。 3
Duration bigint 进程阻塞的时间(毫秒)。 13
EndTime datetime 事件结束的时间。 启动事件类(如 SQL:BatchStartingSP:Starting)不填充此列。 15
EventClass int 事件类型 = 137。 27
EventSequence int 特定事件在请求中的顺序。 51
IndexID int 受事件影响的对象的索引的 ID。 若要确定对象的索引的 ID,请使用 sysindexes 系统表的 indid 列。 24
IsSystem int 指示事件是发生在系统进程中还是发生在用户进程中。 1 = 系统,0 = 用户。 60
LoginSid 图像 已登录的用户的安全标识符 (SID)。 系统线程中始终报告此事件。 IsSystem = 1;SID = sa。 41
模式 int 事件已接收的或要请求的状态。

0 = NULL

1 = Sch-S

2 = Sch-M

3 = S

4 = U

5 = X

6 = IS

7 = IU

8 = IX

9 = SIU

10 = SIX

11 = UIX

12 = BU

13 = RangeS-S

14 = RangeS-U

15 = RangeI-N

16 = RangeI-S

17 = RangeI-U

18 = RangeI-X

19 = RangeX-S

20 = RangeX-U

21 = RangeX-X
32
ObjectID int 获取其锁的对象的系统分配的 ID(如果可用并适用)。 22
ServerName nvarchar 所跟踪的 SQL Server 实例的名称。 26
SessionLoginName nvarchar 发起该会话的用户的登录名。 例如,如果您使用 Login1 连接到 SQL Server 并以 Login2 身份执行语句,则 SessionLoginName 将显示 Login1,而 LoginName 将显示 Login2。 此列将同时显示 SQL Server 登录名和 Windows 登录名。 64
TextData ntext 依赖于跟踪中捕获的事件类的文本值。 1
TransactionID bigint 系统分配的事务 ID。 4

另请参阅

sp_trace_setevent (Transact-SQL)
sp_configure (Transact-SQL)