我在PC上运行SQL Server 2014 Developer Edition。我正在尝试在system_health会话中查看数据。在SSMS中,我已连接到数据库,扩展了服务器/管理/扩展事件/会话。我看到AlwaysON_health(已停止)和system_health(正在运行)。
右键单击system_health会话时,出现以下错误:
使用提供的参数初始化存储失败。(Microsoft.SqlServer.XEventStorage)找不到名为“ system_health”的扩展事件会话。确保会话存在并已启动。(Microsoft SQL Server,错误:25728)
我展开system_health并看到目标package0.event_file和package0.ring_buffer。如果我右键单击任一目标并选择“查看目标数据”,则会收到此错误:
使用提供的参数初始化存储失败。(Microsoft.SqlServer.XEventStorage)无法查看功能'fn_MSXe_read_event_stream',因为该功能不存在或您没有权限。(Microsoft SQL Server,错误:15151)
该功能确实存在。我可以运行它:
select * from fn_MSXe_read_event_stream('system_health', 0);
当我这样做时,会出现以下错误:
Msg 25728, Level 16, State 10, Line 6
The Extended Events session named "system_health" could not be found. Make sure the session exists and is started.
我知道存在system_health会话。我在会话列表中看到:
select * from sys.dm_xe_sessions
address name name
------------------ -------------
0x00000001FF6510C1 system_health
我已经在自己的自定义事件会话中进行了尝试。我也看不到它们的实时数据。
我可以从查询查询system_health环形缓冲区目标数据sys.dm_xe_session_targets
。
为什么我无法观看任何扩展事件会话的实时数据?
(请注意,此问题有一个Microsoft反馈项目。)
master
。重新设置我的默认数据库即可master
解决该错误。