sys.dm_xe_objects 中缺少扩展事件阻止进程报告

extended events blocked process report missing from sys.dm_xe_objects(sys.dm_xe_objects 中缺少扩展事件阻止进程报告)
本文介绍了sys.dm_xe_objects 中缺少扩展事件阻止进程报告的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

试图创建 SERVER EVENT SESSION 来捕获blocked_process_report &xml_deadlock_report 事件到一个文件中,以供以后使用以下语句进行分析;

Trying to create SERVER EVENT SESSION to capture blocked_process_report & xml_deadlock_report events to a file for later analysis with the following statement;

CREATE EVENT SESSION [blocked_process] 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:	empXEventSessionslocked_process.xel',
     metadatafile = N'c:	empXEventSessionslocked_process.xem',
     max_file_size=(65536),
     max_rollover_files=5)
WITH (MAX_DISPATCH_LATENCY = 5SECONDS)

收到如下错误尝试执行该语句;

Receive the following error try to execute this statement;

消息 25623,第 16 级,状态 1,第 1 行事件名称sqlserver.blocked_process_report"无效,或找不到对象**

Msg 25623, Level 16, State 1, Line 1 The event name, "sqlserver.blocked_process_report", is invalid, or the object could not be found**

sys.dm_xe_objects

从 sys.dm_xe_objects 中选择 *按名称排序;

SELECT * FROM sys.dm_xe_objects order by name;

从 binary_data 转到布尔值,没有找到blocked_process_report",因此出现错误.

Goes from binary_data to boolean, no "blocked_process_report" found, hence the error.

当前版本:Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64) 2012 年 6 月 28 日 08:36:30 版权所有 (c) Microsoft Corporation Express Edition (64-bit) o​​n Windows NT 6.1 (Build 7601:服务包 1)

Current version: Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64) Jun 28 2012 08:36:30 Copyright (c) Microsoft Corporation Express Edition (64-bit) on Windows NT 6.1 (Build 7601: Service Pack 1)

我看到其他关于此失踪事件的问题的参考资料,但没有回复.

I see other references to questions regarding this missing event but no responses.

我做错了什么?

推荐答案

很遗憾,blocked_process_report 在 SQL Server 2012 中被添加为可跟踪的扩展事件.

Unfortunately, the blocked_process_report was added as a traceable extended event in SQL Server 2012.

由于直到 SQL Server 2012 才添加扩展事件向导,我将使用以下查询来查看可用的扩展事件:

Since the extended events wizard(s) weren't added until SQL Server 2012, I would use the following query to view the available extended events:

SELECT *
FROM sys.dm_xe_objects AS Events
WHERE Events.object_type = 'event' AND Events.name LIKE '%blocked%'
ORDER BY Events.name;

或者更好地阅读 thisJonathan Kehayias 的文章非常好.

Or even better read this EXCEPTIONALLY good article by Jonathan Kehayias.

这篇关于sys.dm_xe_objects 中缺少扩展事件阻止进程报告的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Execute complex raw SQL query in EF6(在EF6中执行复杂的原始SQL查询)
SSIS: Model design issue causing duplications - can two fact tables be connected?(SSIS:模型设计问题导致重复-两个事实表可以连接吗?)
SQL Server Graph Database - shortest path using multiple edge types(SQL Server图形数据库-使用多种边类型的最短路径)
Invalid column name when using EF Core filtered includes(使用EF核心过滤包括时无效的列名)
How should make faster SQL Server filtering procedure with many parameters(如何让多参数的SQL Server过滤程序更快)
How can I generate an entity–relationship (ER) diagram of a database using Microsoft SQL Server Management Studio?(如何使用Microsoft SQL Server Management Studio生成数据库的实体关系(ER)图?)