例 7: トレース メッセージ プレフィックスのカスタマイズ

各トレース メッセージは、トレース メッセージに関する データで構成される トレース メッセージ プレフィックス で始まります。 トレース メッセージ プレフィックスの形式は、%TRACE_FORMAT_PREFIX% 環境変数に格納されます。 環境変数の値を変更することで、トレース メッセージ プレフィックスをカスタマイズして、トレース メッセージに関して必要なデータを最も役立つ形式で表示できます。 既定のトレース メッセージ プレフィックスの変数と、トレース メッセージ プレフィックスで使用できるすべての変数については、「トレース メッセージ プレフィックス」トピックで説明します。

次の表示は、既定のトレース メッセージ プレフィックスを示しています。 トレース メッセージは、Windows Driver Kit (WDK) のトレースが有効なサンプル ドライバーである Tracedrv によって生成されました。

[0]0AF4.0C64::07/25/2003-14:55:39.998 [tracedrv]IOCTL = 1
[0]0AF4.0C64::07/25/2003-14:55:39.998 [tracedrv]Hello, 1 Hi
[0]0AF4.0C64::07/25/2003-14:55:39.998 [tracedrv]Hello, 2 Hi
...

既定プリフィックスの形式は次のとおりです。

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

次のデータを表します。

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

ここで、 MessageGUIDFriendlyName は、既定では、トレース プロバイダーが構築されたディレクトリの名前です。

新しいトレース メッセージ プレフィックスを作成するには、 set コマンドを使用して %TRACE_FORMAT_PREFIX% 環境変数の値をリセットします。 たとえば、 にします。

set TRACE_FORMAT_PREFIX=%2!s!: %!FUNC!: %8!04x!.%3!04x!: %4!s!:

このコマンドは、トレース メッセージ プレフィックスを次の形式に設定します。

SourceFile_LineNumber: FunctionName: ProcessID.ThreadID: SystemTime 

その結果、Tracefmt 出力では、次の表示に示すように、新しいトレース メッセージ プレフィックスが使用されます。

tracedrv_c258: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998:  IOCTL = 1
tracedrv_c264: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998:  Hello, 1 Hi
tracedrv_c264: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998:  Hello, 2 Hi
tracedrv_c264: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998:  Hello, 3 Hi

...

注: コマンド ファイルまたはバッチ ファイルでトレース プレフィックスを設定する場合は、パーセント記号がコマンド ライン パラメーターの変数を表します。プレフィックス変数には 2 つの連続するパーセント記号を使用します。 たとえば、システム時刻をプレフィックスに含めるには、「%%4」と入力します。