事件追蹤的新功能

本節說明在每個版本中新增至 Windows 事件追蹤的新功能。

Windows 10 (版本 1709)

ETW 現在可以選擇性地追蹤已啟用至會話之所有提供者的二進位檔。 追蹤會針對在呼叫之前啟用會話的提供者,以及針對會話啟用的所有未來提供者,套用追溯。 您現在也可以查詢作業系統所允許的目前設定的最大系統記錄器數目。 如需詳細資訊,請參閱 追蹤 _ 資訊 _ 類別列舉的 TraceProviderBinaryTrackingTraceMaxLoggersQuery 值,以及如何 取出其他事件追蹤資料

ETW 現在可以根據事件名稱篩選事件。 您也可以決定哪些事件會取得其堆疊。 如需詳細資訊,請參閱事件 _ 篩選器 _ 類型 _ 事件 _ 名稱事件 _ 篩選器 _ 類型 _ STACKWALK _ 名稱事件 _ 篩選器 _ 類型 _ STACKWALK 層 _ 級 _事件 _ 篩選器 _ 描述 項結構的層級值,以及相關聯的 事件 _ 篩選器 _ 事件 _ 名稱事件 _ 篩選 _ 層級 _ kw 結構。

Windows 10

TraceLogging 是以 ETW 為基礎,可讓您以簡化的方式檢測原生、.Net 和 WinRT 開發人員的程式碼。 TraceLogging 可讓您包含事件的結構化資料、使事件相互關聯,而且不需要個別的檢測資訊清單 XML 檔案。

加入提供者特性是將更多資料附加至個別提供者註冊的方法。 它們可用於以資訊清單為基礎或 TraceLogging 的提供者。 目前支援將提供者名稱和/或提供者群組新增至個別提供者註冊。 提供者群組是一項新功能,可讓多個 ETW 提供者依所屬群組的匯總進行控制。

定期捕捉狀態是允許定期傳送至提供者的捕獲狀態通知的方式。 啟用此功能時,只會將通知傳送至先前已啟用目前會話的提供者註冊。 如果通知有任何) ,每個提供者都可以定義自己的回應 (。 如需執行的詳細資料,請參閱 追蹤 _ 定期 _ 捕捉 _ 狀態 _ 資訊

Windows 8.1 與 Windows Server 2012 R2

下列功能已新增至 Windows 8.1 和 Windows Server 2012 R2 上的事件追蹤。

支援使用 EnableTraceEx2 函式所使用之事件承載、範圍和堆疊逐步篩選的函式,以及 啟用 _ 追蹤 _ 參數事件 _ 篩選 _ 描述 項結構,以篩選記錄器會話中的特定條件。 如需詳細資訊,請參閱

此外,請參閱 EnableTraceEx2 函數的詳盡修訂檔,以及這些功能所使用的 [ 啟用 _ 追蹤 _ 參數 ] 和 [ 事件 _ 篩選器 _ 描述 元結構]。

定義事件裝載篩選述詞的結構,描述如何篩選新 TdhCreatePayloadFilter 函式所使用之追蹤會話中的單一欄位,以及事件識別碼和堆疊逐步篩選所使用的新結構。 如需詳細資訊,請參閱

取得提供者資訊清單中的事件資訊的函式。 如需詳細資訊,請參閱

結構,定義新 TdhEnumerateManifestProviderEvents 函式所使用之提供者資訊清單中的事件陣列。 如需詳細資訊,請參閱

Windows 8 與 Windows Server 2012

下列功能已新增至 Windows 8 和 Windows Server 2012 上的事件追蹤。

在註冊物件上執行作業、提供事件承載剖析、提供追蹤提供者流覽、查詢事件追蹤會話設定,以及處理 relogged 追蹤檔案的函式。 如需詳細資訊,請參閱

介面,可提供追蹤程式的 relogger 資訊,以及記錄事件的時間、存取特定事件的資料,以及存取可讓事件追蹤記錄檔 (ETL) 檔的 relogger 功能。 如需詳細資訊,請參閱

新函數和介面所使用的其他列舉。 如需詳細資訊,請參閱

Windows 7 與 Windows Server 2008 R2

此版本已新增下列功能:

  • 提供者在資訊清單中定義篩選的能力。 在 Windows Vista 中,控制器可以將篩選資料傳遞給提供者。 但是,資訊清單中未定義篩選資料的配置,因此提供者必須使用其他方法將篩選定義提供給控制器。 在此版本中,提供者可以在資訊清單中定義篩選定義, (查看 ProviderType複雜類型) 的 [篩選] 屬性。 然後,控制器可以使用 TdhEnumerateProviderFilters 函數來判斷篩選定義。 使用篩選準則的提供者應該使用 EventWriteEx 函式來寫入事件。
  • 能夠使用單一緩衝區來收集多個處理器上所產生的事件。 使用單一緩衝區可避免在多處理器電腦上出現順序不會出現的事件。 如需詳細資訊,請參閱 事件 _ 追蹤 _ _ 每個 _ 處理器的 _ 緩衝 記錄模式。 根據預設,ETW 會使用每個處理器的緩衝區。
  • 捕獲事件堆疊追蹤的能力。 若要啟用核心事件的堆疊追蹤,請參閱 TraceSetInformation 函數。 若要啟用使用者事件的堆疊追蹤,請參閱 啟用 _ 追蹤 _ 參數EnableProperty 成員的 事件 _ 啟用 _ 屬性 _ 堆疊 _ 追蹤 旗標。
  • 使用 事件 _ 追蹤 _ 私用 _ 記錄器 _ 模式 記錄模式來指定 事件 _ 追蹤 _ 緩衝 _ 模式事件追蹤檔案模式的 [ _ _ _ _ NEWFILE 記錄] 模式 (查看 記錄模式常數) 。
  • 能夠同步啟用提供者。 預設會以非同步方式啟用提供者。 若要同步啟用提供者,請設定 EnableTraceEx2Timeout 參數。
  • 控制器要求提供者記錄其狀態的能力。 如需詳細資訊,請參閱 EnableTraceEx2ControlCode 參數的 事件 _ 控制項程式 _ 代碼 _ 捕捉 _ 狀態 旗標。
  • 取用者使用 TdhFormatProperty 函數來格式化事件資料的能力。
  • 在不包含提供者的電腦上,將事件資訊清單事件解碼的能力。 如需詳細資訊,請參閱 TdhLoadManifest 函數。

此版本已新增下列函式:

此版本已新增下列結構:

此版本中加入了下列列舉:

此版本中新增了下列 MOF 類別: