共用方式為


軟體追蹤工具

Microsoft Windows 驅動程式套件 (WDK) 包含一組用於軟體追蹤的應用程式和命令列工具。 這些工具的設計目的是要支援 Windows 的事件追蹤 (ETW) ,並補充 Windows 中包含的追蹤工具。

追蹤工具有哪些?

這些工具包括配置、啟動、更新及停止追蹤會話的 追蹤控制器 ,以及接收階段作業期間產生的追蹤訊息的 追蹤取用者 ,並將二進位資料轉換成檔案或顯示的人類可讀格式。

這些工具支援各種 追蹤提供者,包括使用者模式應用程式和核心模式驅動程式,這些驅動程式會使用 WPP 軟體追蹤Windows 事件追蹤 (ETW) 來檢測軟體追蹤。 如需檢測程式碼的兩種方法的比較,請參閱 何時使用 WPP 軟體追蹤和 Windows 事件追蹤 (ETW)。

這些工具也可以存取內建於 Windows 中的保留 追蹤會話 ,例如 全域記錄器追蹤會話 / NT 核心記錄器追蹤會話

其中一些工具位於 Windows 驅動程式套件 (WDK) 的 tools\<Platform> 子目錄中,其中 <Platform> 是 x86 或 x64。 其他工具會隨附於 Windows 中,或位於 WDK 的 bin\<Platform> 子目錄中。

何時應該使用 WPP 軟體追蹤或 Windows 事件追蹤 (ETW) API?

如果您有興趣主要收集追蹤資料以進行開發和偵錯,請使用 WPP 軟體追蹤 。 使用 Windows 事件追蹤 (ETW) 進行其他類型的追蹤。

WPP 軟體追蹤 顯式/追蹤日誌 ETW
支援 Windows 2000 和更新版本。 支援 Windows Vista 和更新版本。
開發和除錯過程中的事件追蹤。 主要針對內部開發人員。 用於管理、操作、分析和調試目的的跟踪事件。
需要 TMF 檔案來解碼事件,這些事件是從記錄二進位檔的 PDB 擷取的。 用於解碼事件的中繼資料包含在本機二進位檔或事件承載中。
每個追蹤提供者只能有一個作用中會話。 事件可以多重分發到多個使用者。
訊息字串無法本地化。 字串可以本地化。
提供者安全性僅限於不共用啟用和解碼事件所需的控制 GUID 或 TMF 檔案。 提供者可以套用 ACL 來限制哪些使用者可以從中收集事件。
 

如需使用 Windows 軟體追蹤前置處理器 (WPP) 宏將軟體追蹤新增至驅動程式或應用程式的資訊,請參閱 WPP 軟體追蹤

如需針對驅動程式使用核心模式 ETW API 的相關資訊,請參閱 Windows 事件追蹤 (ETW)。

如需使用 Windows 驅動程式模型 (WDM) 的 Windows Management Instrumentation (WMI) 延伸模組,將軟體追蹤新增至任何驅動程式的相關資訊,請參閱 WMI 事件追蹤

便條 ETW 和 WPP 支援大部分類型的核心模式驅動程式和使用者模式應用程式。 不過,ETW 和 WPP 會使用不適用於特定類型驅動程式的類型,例如迷你埠驅動程式。 若要判斷是否支援特定驅動程式類型,請將基本 WPP 宏新增至驅動程式,例如 WPP_INIT_TRACINGWPP_CLEANUP。 如果程式碼未編譯,因為未定義使用的類型,則 ETW 和 WPP 無法支援驅動程式類型。 

本節內容

本節從對軟體追蹤工具的調查開始,討論這些工具的基礎概念,然後提供 WDK 中軟體追蹤工具的文件。

本節包含:

軟體追蹤工具調查

追蹤工具概念

TraceView

追蹤日誌

Tracepdb

Tracefmt

開機期間的追蹤

WPP 軟體追蹤

軟體追蹤常見問題

Windows 事件追蹤 (ETW)

核心模式效能監視

如需 事件追蹤的概念資訊,請參閱 Microsoft Windows SDK 檔。