Printed 2015/11/30 03:45PM

Undocumented Capabilities of Extended Event Objects

By Robert Davis, 2010/04/28

Undocumented Capabilities of Extended Event Objects

The extended event objects (objects exposed by an event package) are listed in the system catalog sys.dm_xe_objects. This dynamic management view is documented in Books Online, but it does not adequately document the capabilities_desc column. I understand from a member of the SQL team that a documentation bug was filed today for this, and he provided some documentation as to what the column means.


This information is coming directly from a member of the SQL team and will documented in Books Online in the not too distant future. The below descriptions can also be combined. For example, an event can be both private and no_block, and a target can by singleton and synchronous (the etw_classic_sync_target is an example of this). The last table of Type capabilities were not included in the info from the SQL team and are a result of my own observation.

Capabilities that apply to all object types


The object only available for internal use, and cannot be accessed via the CREATE/ALTER EVENT SESSION DDL.  Audit events and targets fall into this category, as well as a small number of objects used internally



Event capabilities


The event is in a critical code path that cannot block for any reason.  Events with this capability may not be added to any event session that specifies NO_EVENT_LOSS.



Target capabilities


The target consumes buffers of events at a time, rather than event by event


Only one instance of the target can exist in a process.  Although multiple event sessions can reference the same singleton target there is really only one instance, and that instance will see each unique event only once.  This is important if the target is added to multiple sessions that all collect the same event.


The target is executed on the thread that is producing the event, before control is returned to the calling code line.

Type Capabilities (from my own observation)


Is a signed integer value


Is a floating point type

Copyright © 2002-2015 Simple Talk Publishing. All Rights Reserved. Privacy Policy. Terms of Use. Report Abuse.