sys.database_event_sessions (Azure SQL 資料庫 和 Azure SQL 受控執行個體)
適用於: Azure SQL 資料庫 Azure SQL 受控執行個體
列出存在於目前資料庫中的所有資料庫範圍事件會話定義。 如需作用中資料庫範圍事件會話的相關信息,請參閱sys.dm_xe_database_sessions。
Azure SQL 資料庫 僅支持資料庫範圍的會話。 Azure SQL 受控執行個體 同時支援資料庫範圍的工作階段和伺服器範圍的工作階段。 建議受控實例使用伺服器範圍的會話:深入瞭解 CREATE EVENT SESSION。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
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。 不允許事件遺失。 此選項可確保會保留所有引發的事件。 使用此選項會強制引發事件的所有工作等待事件緩衝區中的可用空間。 這可能會導致事件會話處於使用中狀態時,可偵測的效能降低。 對於 Azure SQL 資料庫 中的事件檔案目標,其行為與ALLOW_SINGLE_EVENT_LOSS相同。 如需詳細資訊,請參閱 EVENT_RETENTION_MODE。 |
max_dispatch_latency | int | 事件在提供給會話目標之前,在記憶體中緩衝處理的時間量,以毫秒為單位。 有效值為 1 到 2147483648 和 -1。 -1 的值表示分派延遲是無限的。 可為 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 DATABASE STATE 許可權。
下一步
在下列文章中深入了解相關概念:
- sys.server_event_sessions會傳回 SQL Server 和 Azure SQL 受控執行個體 的伺服器範圍事件會話定義。
- Azure SQL 資料庫中的擴充事件
- Azure 中擴充事件的事件檔案目標程式代碼 SQL 資料庫 和 SQL 受管理執行個體
- sys.database_event_session_actions (Azure SQL 資料庫 和 Azure SQL 受控執行個體)
- sys.database_event_session_targets (Azure SQL 資料庫 和 Azure SQL 受控執行個體)
- 使用動態管理檢視監視 Microsoft Azure SQL 資料庫 和 Azure SQL 受控執行個體 效能