Table of Contents

Class ExtendedEventsSchema.ServerEventSession

Namespace
LinqToDB.Tools.DataProvider.SqlServer.Schemas
Assembly
linq2db.Tools.dll

sys.server_event_sessions (Transact-SQL)

Applies to: √ SQL Server (all supported versions)

Lists all the event session definitions that exist in SQL Server.


See sys.server_event_sessions.

[Table(Schema = "sys", Name = "server_event_sessions", IsView = true)]
public class ExtendedEventsSchema.ServerEventSession
Inheritance
ExtendedEventsSchema.ServerEventSession
Extension Methods

Properties

EventRetentionMode

Determines how event loss is handled. The default is S. Is not nullable. Is one of the following:

S. Maps to event_retention_mode_desc = ALLOW_SINGLE_EVENT_LOSS

M. Maps to event_retention_mode_desc = ALLOW_MULTIPLE_EVENT_LOSS

N. Maps to event_retention_mode_desc = NO_EVENT_LOSS

[Column("event_retention_mode")]
[Nullable]
public string? EventRetentionMode { get; set; }

Property Value

string

EventRetentionModeDesc

Describes how event loss is handled. The default is ALLOW_SINGLE_EVENT_LOSS. Is not nullable. Is one of the following:

ALLOW_SINGLE_EVENT_LOSS. Events can be lost from the session. Single events are dropped only when all event buffers are full. Losing single events when buffers are full allows for acceptable SQL Server performance characteristics, while minimizing the loss in the processed event stream.

ALLOW_MULTIPLE_EVENT_LOSS. Full event buffers can be lost from the session. The number of events lost depends on the memory size allocated to the session, the partitioning of the memory, and the size of the events in the buffer. This option minimizes performance impact on the server when event buffers are quickly filled. However, large numbers of events can be lost from the session.

NO_EVENT_LOSS. No event loss is allowed. This option ensures that all events raised are retained. Using this option forces all the tasks that fire events to wait until space is available in an event buffer. This may lead to detectable performance degradation while the event session is active.

[Column("event_retention_mode_desc")]
[Nullable]
public string? EventRetentionModeDesc { get; set; }

Property Value

string

EventSessionID

The unique ID of the event session. Is not nullable.

[Column("event_session_id")]
[NotNull]
public int EventSessionID { get; set; }

Property Value

int

MaxDispatchLatency

The amount of time, in milliseconds, that events will be buffered in memory before they are served to session targets. Valid values are from 0 to 2147483648, and 0. A value of 0 indicates that dispatch latency is infinite. Is nullable.

[Column("max_dispatch_latency")]
[Nullable]
public int? MaxDispatchLatency { get; set; }

Property Value

int?

MaxEventSize

The amount of memory set aside for events that do not fit in event session buffers. If max_event_size exceeds the calculated buffer size, two additional buffers of max_event_size are allocated to the event session. Is nullable.

[Column("max_event_size")]
[Nullable]
public int? MaxEventSize { get; set; }

Property Value

int?

MaxMemory

The amount of memory allocated to the session for event buffering. The default value is 4 MB. Is nullable.

[Column("max_memory")]
[Nullable]
public int? MaxMemory { get; set; }

Property Value

int?

MemoryPartitionMode

The location in memory where event buffers are created. The default partition mode is G. Is not nullable. memory_partition_mode is one of:

G - NONE

C - PER_CPU

N - PER_NODE

[Column("memory_partition_mode")]
[Nullable]
public string? MemoryPartitionMode { get; set; }

Property Value

string

MemoryPartitionModeDesc

The default is NONE. Is not nullable. Is one of the following:

NONE. A single set of buffers are created within a SQL Server instance.

PER_CPU. A set of buffers is created for each CPU.

PER_NODE. A set of buffers is created for each non-uniform memory access (NUMA) node.

[Column("memory_partition_mode_desc")]
[Nullable]
public string? MemoryPartitionModeDesc { get; set; }

Property Value

string

Name

The user-defined name for identifying the event session. name is unique. Is not nullable.

[Column("name")]
[Nullable]
public string? Name { get; set; }

Property Value

string

StartupState

Value determines whether or not session is started automatically when the server starts. The default is 0. Is not nullable. Is one of:

0 (OFF). The session does not start when the server starts.

1 (ON). The event session starts when the server starts.

[Column("startup_state")]
[Nullable]
public bool? StartupState { get; set; }

Property Value

bool?

TrackCausality

Enable or disable causality tracking. If set to 1 (ON), tracking is enabled and related events on different server connections can be correlated. The default setting is 0 (OFF). Is not nullable.

[Column("track_causality")]
[Nullable]
public bool? TrackCausality { get; set; }

Property Value

bool?