sys.dm_xe_objects (Transact-SQL)
適用於:SQL ServerAzure SQL 資料庫 Azure SQL 受控執行個體
針對事件封裝所公開的每個物件,各傳回一個資料列。 物件可以是下列其中一項:
活動。 事件表示執行路徑中感興趣的點。 所有事件都包含景點的相關信息。
動作。 引發事件時,動作會同步執行。 動作可以將運行時間數據附加至事件。
目標。 目標會以同步方式在引發事件的線程上,或在系統提供的線程上以異步方式取用事件。
謂詞。 述詞來源會從事件來源擷取值,以用於比較作業。 述詞比較會比較特定的數據類型,並傳回布爾值。
型別: 型別會封裝位元組集合的長度和特性,這是解譯數據的必要專案。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
NAME | nvarchar(60) | 物件的名稱。 名稱在特定物件類型的封裝內是唯一的。 不可為 Null。 |
object_type | nvarchar(60) | 物件的類型。 object_type是下列其中一項: event 動作 目標 pred_source pred_compare type 不可為 Null。 |
package_guid | uniqueidentifier | 公開此動作之封裝的 GUID。 sys.dm_xe_packages.package_id 具有多對一關聯性。 不可為 Null。 |
description | nvarchar(256) | 動作的描述。 描述是由套件作者所設定。 不可為 Null。 |
能力 | int | 描述物件功能的點陣圖。 可為 Null。 |
capabilities_desc | nvarchar(256) | 列出 物件的所有功能。 可為 Null。 適用於所有物件類型的功能 - 私人。 唯一可用於內部使用的物件,且無法透過 CREATE/ALTER EVENT SESSION DDL 存取。 除了內部使用的少數物件之外,稽核事件和目標也屬於此類別。 =============== 事件功能 - No_block。 事件位於因任何原因而無法封鎖的重要程式碼路徑中。 具有這項功能的事件可能不會新增至任何指定NO_EVENT_LOSS的事件會話。 =============== 適用於所有物件類型的功能 - Process_whole_buffers。 目標會一次取用事件的緩衝區,而不是依事件的事件。 - Singleton。 只有一個目標實例可以存在於進程中。 雖然多個事件會話可以參考相同的單一目標,但實際上只有一個實例,而且該實例只會看到每個唯一事件一次。 如果目標已新增至所有收集相同事件的多個會話,這很重要。 - Synchronous: 目標會在產生事件的線程上執行,再將控件傳回呼叫程式代碼行。 |
type_name | nvarchar(60) | pred_source 和 pred_compare物件的名稱。 可為 Null。 |
type_package_guid | uniqueidentifier | 封裝的 GUID,會公開此物件所操作的類型。 可為 Null。 |
type_size | int | 數據類型的大小,以位元組為單位。 這隻適用於有效的物件類型。 可為 Null。 |
權限
需要伺服器上的 VIEW SERVER STATE 許可權。
SQL Server 2022 和更新版本的權限
需要伺服器上的 VIEW SERVER PERFORMANCE STATE 權限。
關聯性基數
從 | 至 | 關聯 |
---|---|---|
sys.dm_xe_objects.package_guid | sys.dm_xe_packages.guid | 多對一 |
下一步
在下列文章中深入了解相關概念: