共用方式為


追蹤訊息前置詞

Tracefmt 會將前置詞新增至每個追蹤訊息,其中包含 儲存在事件追蹤記錄檔 (.etl) 檔案 中的資料,以及 追蹤訊息格式 (.tmf) 檔案

Tracefmt 預設包含特定的資料元素,但使用者可以變更 %TRACE_FORMAT_PREFIX% 環境變數來新增和移除元素,這是指定與 FormatMessage相容的訊息定義字串。

預設追蹤訊息前置詞的格式如下:

[%9!d!]%8!04X!.%3!04X!::%4!s! [%1!s!]

會產生下列前置詞:

[CPUNumber]ProcessID.ThreadID :: SystemTime [MessageGUIDFriendlyName]

每個 %n 變數都代表下表所述的參數。

前置詞變數識別碼 變數類型 描述

%1

string

追蹤 訊息之訊息 GUID 的易記名稱。 根據預設,訊息 GUID 的易記名稱是建立 追蹤提供者 的目錄名稱。

若要變更訊息 GUID 的易記名稱,請使用 -p 參數搭配 Tracewpp 或 RUN_WPP 宏。 如需詳細資訊,請參閱Run_WPP選項。

%2

string

原始程式檔和行號。

這個變數代表追蹤訊息的易記名稱。 根據預設,追蹤訊息的易記名稱是來源檔案的名稱,以及產生追蹤訊息的程式程式碼號。

%3

ULONG

執行緒識別碼。

識別產生追蹤訊息的執行緒。

%4

string

產生追蹤訊息之時間的時間戳記。

%5

string

核心時間。

在產生追蹤訊息時,在 CPU 刻度中顯示核心模式指令經過的執行時間。

%6

string

使用者時間。

在產生追蹤訊息時,以 CPU 刻度顯示使用者模式指令的經過執行時間。

%7

LONG

序號。

顯示追蹤訊息的本機或全域序號。 只有這個追蹤會話唯一的本機序號是預設值。

%8

ULONG

進程識別碼。

識別產生追蹤訊息的進程。

%9

ULONG

CPU 號碼。

識別產生追蹤訊息的 CPU。

%!FUNC!

string

函式名稱。

顯示產生追蹤訊息的函式名稱。

%!標誌!

string

顯示啟用追蹤訊息的 追蹤旗標 名稱。

(因為 DoTraceMessage 宏會反轉旗標和層級引數,所以 DoTraceMessage 所產生的訊息會顯示此欄位中 追蹤層級 的值。)

%!水準!

string

顯示啟用追蹤訊息的 追蹤層級 值。

(因為 DoTraceMessage 宏會反轉旗標和層級引數,所以 DoTraceMessage 所產生的訊息會顯示此欄位中 追蹤旗 標的名稱。)

%!COMPNAME!

string

元件名稱。

顯示產生追蹤訊息之提供者元件的名稱。 只有在追蹤程式碼中指定元件名稱時才會出現。

%!SUBCOMP!

string

子元件名稱。

顯示產生追蹤訊息之提供者的子元件名稱。 只有在追蹤程式碼中指定元件名稱時才會出現。

驚嘆號內的符號是指定變數格式和精確度的轉換字元。 例如,%8!04X! 指定以四位數無符號十六進位數位表示的進程識別碼。 必須包含這些轉換字元。

若要變更追蹤訊息前置詞的專案、順序或格式,請使用 %TRACE_FORMAT_PREFIX% 環境變數。 如需範例,請參閱 範例 7:自訂追蹤訊息前置詞

如需 TMF 檔案中內容的範例,請參閱格式化來自 tracedrv 範例的追蹤訊息。

此外, -csv 參數會在標準 Tracefmt 前置詞之前,將不可設定的詳細前置詞新增至每個追蹤訊息。 如需 CSV 前置詞中欄位的描述,請使用 -csvheader 參數。