Tracefmt 命令

若要使用 Tracefmt,請在 [命令提示字元] 視窗中輸入命令。 下列語法會顯示 Tracefmt 命令的專案。

若要以可讀取的形式顯示追蹤訊息,Tracefmt 必須將追蹤訊息格式檔案中的格式設定指示套用至追蹤訊息。 您使用的語法取決於您是否有追蹤提供者的 TMF 檔案,還是要 Tracefmt 建立 TMF 檔案。

若要提供 TMF 檔案或 TMF 檔案目錄的路徑:

    tracefmt [EtlFile | -rt SessionName][-tmf TMFFile | -p TMFPath ] [Options]

若要建立 TMF 檔案:

    tracefmt [EtlFile | -rt SessionName]-i ImageFiles [-r SymbolPath ] [-p TmfPath ] [Options]

若要在命令列上顯示語法。

    tracefmt -h | /?

參數

EtlFile
指定包含追蹤訊息的事件追蹤記錄 (.etl) 檔案。 輸入 (選擇性) 和檔案名的路徑。 預設值為 c:\logfile.etl。

-rtSessionName
即時。 格式化來自指定之即時追蹤會話的追蹤訊息,而不是從 追蹤記錄檔格式化。

SessionName 是追蹤會話的名稱。 預設值為 NT 核心記錄器

-tmfTMFFile
指定 追蹤訊息格式 (.tmf) 檔案 的路徑 (選擇性) 和檔案名。 預設值為 Default.tmf,這是 WDK 中包含的檔案。

-iImageFiles
指示 Tracefmt 尋找指定影像檔案的 PDB 符號檔,以及從 PDB 檔案中的格式指示建立 TMF 檔案。

ImageFiles 代表 追蹤提供者之一或多個二進位檔案 (.exe、.dll或.sys) 的路徑和檔案名。 使用分號 (;) 來分隔影像檔名稱。

-rSymbolPaths
指定 -i中所指定影像檔的私人 PDB 符號檔位置。

SymbolPaths 代表儲存私用符號或符號伺服器路徑之目錄的一或多個路徑。 使用分號 (;) 來分隔路徑名稱。 SymbolPaths中的路徑名稱可以包含萬用字元,例如星號 (*) 表示多個字元,以及問號 (?) 表示單一字元。

如果您在命令中包含 -i ,但省略 -r,Tracepdb 會搜尋 %_NT_SYMBOL_PATH% 環境變數所指定路徑中指定影像的 PDB 檔案。 如果未設定環境變數,Tracepdb 會在預設符號路徑 srv*\\\symbols\\symbols\\symbols中搜尋。

-pTMFPath
指定儲存 TMF 檔案之目錄的路徑。

在沒有-i的情況下使用-p時,Tracefmt 會在-p指定的路徑中搜尋現有的 TMF 檔案。 如果省略 -p ,則會在 %TRACE_FORMAT_SEARCH_PATH% 環境變數的值中尋找 TMF 檔案,如果設定的話。 否則,Tracefmt 會嘗試在 Default.tmf 檔案中套用格式化指示。

-p-i搭配使用時,Tracefmt 會將它建立的 TMF 檔案放在 -p所指定的目錄中。 如果省略 -p ,如果已設定,Tracefmt 會將 TMF 檔案放在 %TRACE_FORMAT_SEARCH_PATH% 環境變數的值所指定的目錄中。 否則,Tracefmt 會將檔案放在本機目錄中。

-H | /?
顯示說明。

-oOutputFile
指定 Tracefmt 輸出檔案Tracefmt 摘要訊息檔的替代名稱。 輸出檔案) 和本機目錄中摘要檔案) FmtSum.txt.sum (的預設值為FmfFile.txt (。

OutputFile 是副檔名為.txt的路徑和檔案名,例如 c:\traces\trace.txt。

如果您使用此參數搭配 -displayonly-summaryonly 選項,它只會影響摘要訊息檔案。

-Csv
Tracefmt 輸出檔案 格式化為逗號分隔的可變長度 (.csv) 檔案。 除了標準 追蹤訊息前置詞之外,此格式還會在每個訊息中新增詳細的結構化前置詞。

如果有任何,此選項會影響輸出檔案,以及在命令提示字元視窗中顯示追蹤訊息。

-csvheader
將描述性資料行標題的資料列新增至 CSV 檔案。 此標頭特別適用于解譯 Tracefmt 新增至 CSV 檔案的結構化前置詞。 根據預設,Tracefmt CSV 檔案沒有資料行標題。

-csvquote
將 CSV 檔案中的所有引號加倍 (「) 。 這項功能是專為只在以引號括住時顯示引號的應用程式所設計。

-顯示
除了將追蹤訊息寫入輸出檔之外,還會在 [命令提示字元] 視窗中顯示追蹤訊息。

-displayonly
只在 [命令提示字元] 視窗中顯示追蹤訊息,而且不會建立輸出檔案。

-nosummary
不會建立 摘要訊息檔案

-summaryonly
只建立 摘要訊息檔案。 Tracefmt 不會建立 輸出檔案

-noprefix
省略 追蹤訊息前置詞。 此選項會影響輸出檔中的追蹤訊息和 Tracefmt 顯示。

-雇傭
高解析度。 顯示追蹤訊息時間戳記中的微秒數和奈秒數。 根據預設,只會顯示毫秒。

當效能計數器時鐘值用於追蹤訊息時間戳記時,請使用此選項,而不是系統計時器,例如使用 Tracelog -UsePerfCounter 參數時。 如需 Tracelog 命令的相關資訊,請參閱 Tracelog 命令語法

-seq
顯示 追蹤訊息前置詞中的本機或全域序號。 如果未在訊息中記錄序號,則欄位未初始化,或填入零或 「f」。

-Ods
將格式化的追蹤訊息傳送至偵錯工具以供顯示。

-Gmt
在 Greenwich Mean Time (GMT) 中顯示每個追蹤訊息上的時間戳記。

此選項只會影響 Tracefmt 輸出檔案。 它不會將事件追蹤記錄檔中的時間戳記 (.etl) 檔案。 當您提交 Tracefmt 命令時,會顯示追蹤記錄的時區。

-Utc
以國際標準時間 (UTC) 顯示每個追蹤訊息上的時間戳記。 UTC 幾乎與 GMT 相同,但它以零表示午夜。

此選項只會影響 Tracefmt 輸出檔案。 它不會將事件追蹤記錄檔中的時間戳記 (.etl) 檔案。 當您提交 Tracefmt 命令時,會顯示追蹤記錄檔的時區。

-跟蹤
顯示追蹤動作發生時。 當格式不正確或 Tracefmt 回報錯誤或例外狀況時,這項資訊很有用。

追蹤顯示可能非常廣泛。 請考慮將 Tracefmt 輸出重新導向至文字檔,以供稍後檢查。

-V
詳細。 在 [命令提示字元] 視窗中顯示詳細資訊,因為 Tracefmt 會處理追蹤訊息的每個區塊或緩衝區。 當您懷疑檔案損毀或不一致時,請使用此選項。

評論

尋找 TMF 檔案

如果您省略 -i 參數,Tracefmt 會使用下列方法來尋找 TMF 檔案。 這些方法會依 Tracefmt 使用這些方法的順序列出。

  • -tmf參數。

  • -p參數。

  • %TRACE_FORMAT_SEARCH_PATH% 環境變數。

  • Default.tmf,包含在 WDK 中的檔案。

如果 Tracefmt 找不到 TMF 檔案,或 TMF 檔案不包含追蹤訊息的格式資訊,Tracefmt 就無法顯示訊息。 相反地,它會寫入下列錯誤訊息來取代追蹤訊息

No Format Information found.

例外狀況引發

如果 Tracefmt 無法格式化追蹤訊息參數,則會引發例外狀況並顯示如下的訊息:

*****FormatMessage Header(Header) of EventTrace, parameter 23 raised an exception*****

如果您看到類似的例外狀況,請檢閱原始程式碼中的訊息定義,特別注意任何使用者指定的變數類型。 如需詳細資訊,請參閱 DoTraceMessage

具有非 GUID 檔案名的 TMF 檔案

如果 TMF 檔案名不是 訊息 GUID,您必須使用 -tmf 參數來識別檔案,並輸入檔案的完整路徑。

格式化 NT 核心記錄器追蹤訊息

若要格式化 來自 NT 核心記錄器追蹤會話全域記錄器追蹤會話的訊息,請使用 -tmf 參數來指定 system.tmf 檔案,這是 WDK 中包含的 追蹤訊息格式檔案

格式化來自即時追蹤會話的追蹤訊息

當您使用 -rt (即時) 參數時,Tracefmt 會顯示一則訊息,確認它是即時模式,然後等候來自指定追蹤提供者的追蹤訊息。 在追蹤會話停止之前,它不會返回命令提示字元。

格式化 QPC 時間戳記

Tracefmt 不會正確地將系統效能計數器時鐘的值格式化 (QueryPerformanceCounter) 。 如果您使用這個高解析度時間,請使用 Windows 中包含的工具 Tracerpt 來格式化追蹤訊息。 如需詳細資訊,請參閱Tracelog 命令語法中的-UsePerfCounter參數描述。

序列外追蹤訊息

如果您在執行 Windows XP 的電腦上檢視追蹤訊息檔案,顯示可能會顯示順序不足的追蹤訊息。 若要修正此問題,您可以在啟動追蹤會話並使用 Tracefmt 檢視追蹤時使用序號選項。 接著,您可以使用 Traceview 來檢視追蹤,並根據序號排序。 您也可以在執行 Windows Server 2003 或更新版本的 Windows 電腦上檢視追蹤。