sys.server_event_sessions (Transact-SQL)
適用於:SQL Server Azure SQL 受控執行個體
列出存在於 SQL Server 或 Azure SQL 受控執行個體 中的所有伺服器範圍事件會話定義。
注意
Azure SQL 資料庫僅支援資料庫範圍的事件工作階段。 請參閱相關檢視, sys.database_event_sessions。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
event_session_id | int | 事件會話的唯一標識符。 不可為 Null。 |
NAME | sysname | 用來識別事件會話的使用者定義名稱。 name 是唯一的。 不可為 Null。 |
event_retention_mode | nchar(1) | 決定如何處理事件遺失。 預設值為 S。不可為 Null。 這是下列其中一項: S. 對應至 event_retention_mode_desc = ALLOW_SINGLE_EVENT_LOSS M. 對應至 event_retention_mode_desc = ALLOW_MULTIPLE_EVENT_LOSS N. 對應至 event_retention_mode_desc = NO_EVENT_LOSS |
event_retention_mode_desc | sysname | 描述如何處理事件遺失。 預設值為 ALLOW_SINGLE_EVENT_LOSS。 不可為 Null。 這是下列其中一項: ALLOW_SINGLE_EVENT_LOSS。 事件可能會從會話遺失。 只有在所有事件緩衝區都已滿時,才會卸除單一事件。 當緩衝區已滿時遺失單一事件允許可接受的 SQL Server 效能特性,同時將已處理事件數據流中的遺失降到最低。 ALLOW_MULTIPLE_EVENT_LOSS。 完整事件緩衝區可能會從會話遺失。 遺失的事件數目取決於配置給會話的記憶體大小、記憶體的數據分割,以及緩衝區中事件的大小。 此選項可將事件緩衝區快速填滿時,對伺服器的效能影響降到最低。 不過,會話可能會遺失大量的事件。 NO_EVENT_LOSS。 不允許事件遺失。 此選項可確保會保留所有引發的事件。 使用此選項會強制引發事件的所有工作等待事件緩衝區中的可用空間。 這可能會導致事件會話處於使用中狀態時,可偵測的效能降低。 |
max_dispatch_latency | int | 事件在提供給會話目標之前,會在記憶體中緩衝處理事件的時間量,以毫秒為單位。 有效值為 0 到 2147483648 和 0。 值為 0 表示分派延遲是無限的。 可為 Null。 |
max_memory | int | 配置給會話以進行事件緩衝處理的記憶體數量。 預設值為 4 MB。 可為 Null。 |
max_event_size | int | 針對不符合事件會話緩衝區的事件所保留的記憶體數量。 如果max_event_size超過計算的緩衝區大小,則會將另外兩個max_event_size緩衝區配置給事件會話。 可為 Null。 |
memory_partition_mode | nchar(1) | 在記憶體中建立事件緩衝區的位置。 默認數據分割模式為 G。不可為 Null。 memory_partition_mode是下列其中一項: G - 無 C - PER_CPU N - PER_NODE |
memory_partition_mode_desc | sysname | 預設值為 NONE。 不可為 Null。 這是下列其中一項: 沒有。 SQL Server 實例內會建立一組緩衝區。 PER_CPU。 系統會為每個 CPU 建立一組緩衝區。 PER_NODE。 系統會為每個非統一記憶體存取 (NUMA) 節點建立一組緩衝區。 |
track_causality | bit | 啟用或停用因果追蹤。 如果設定為 1 (ON),則會啟用追蹤,且不同伺服器連線上的相關事件可以相互關聯。 默認設定為 0 (OFF)。 不可為 Null。 |
startup_state | bit | 值會決定伺服器啟動時是否自動啟動工作階段。 預設值是 0。 不可為 Null。 這是下列其中一項: 0 (關閉)。 伺服器啟動時,會話不會啟動。 1 (ON)。 事件會話會在伺服器啟動時啟動。 |
權限
需要伺服器上的 VIEW SERVER STATE 許可權。
下一步
在下列文章中深入了解相關概念: