使用 SQL Server 扩展事件

SQL Server 扩展事件提供了用于创建和修改扩展事件会话的数据定义语言 (DDL) 语句。另外,您可使用动态管理视图和目录视图来获取会话数据和元数据。

可使用 Transact-SQL 语句运行所提供的视图以从创建的每个扩展事件会话获取所需信息。

您可以使用 SQL Server Management Studio 来创建和执行所提供的代码示例。有关详细信息,请参阅使用对象资源管理器

DDL 语句

请使用下表中介绍的 DDL 语句来创建、更改和删除扩展事件会话。

名称

说明

CREATE EVENT SESSION (Transact-SQL)

创建用于标识事件源、事件会话目标和事件会话参数的扩展事件会话对象。

ALTER EVENT SESSION (Transact-SQL)

启动或停止事件会话,或更改事件会话配置。

DROP EVENT SESSION (Transact-SQL)

删除事件会话。

目录视图

请使用下表介绍的目录视图来获取创建事件会话时所创建的元数据。

名称

说明

sys.server_event_sessions

列出所有事件会话定义。

sys.server_event_session_actions

对事件会话中每个事件的每个操作都返回一行。

sys.server_event_session_events

对事件会话中的每个事件都返回一行。

sys.server_event_session_fields

对在事件和目标上显式设置的每个自定义列都返回一行。

sys.server_event_session_targets

对事件会话的每个事件目标都返回一行。

动态管理视图

可使用下表介绍的动态管理视图来获取会话元数据和会话数据。将从目录视图中获取元数据,当启动并运行事件会话时即创建会话数据。

注意注意

  直到会话启动,这些视图中才会包含会话数据。

名称

说明

sys.dm_os_dispatcher_pools

返回有关会话调度程序池的信息。

sys.dm_xe_objects (Transact-SQL)

对事件包显示的每个对象都返回一行。

sys.dm_xe_object_columns (Transact-SQL)

返回所有对象的架构信息。

sys.dm_xe_packages (Transact-SQL)

列出向扩展事件引擎注册的所有包。

sys.dm_xe_sessions (Transact-SQL)

返回有关处于活动状态的扩展事件会话的信息。

sys.dm_xe_session_targets (Transact-SQL)

返回有关会话目标的信息。

sys.dm_xe_session_events (Transact-SQL)

返回有关会话事件的信息。

sys.dm_xe_session_event_actions (Transact-SQL)

返回有关事件会话操作的信息。

sys.dm_xe_map_values (Transact-SQL)

提供一个从内部数字键到可读文本的映射。

sys.dm_xe_session_object_columns (Transact-SQL)

显示绑定到会话的对象的配置值。