ソフトウェア トレース ツールの調査

次のソフトウェア トレース ツールは、Windows Driver Kit (WDK) または Windows オペレーティング システムに含まれています。

トレース プロデューサーでの WPP トレースの有効化

  • TraceWPP (TraceWPP.exe) は、カーネル モード ドライバーやユーザー モード アプリケーションなどのトレース プロバイダーのソース ファイルで、Windows ソフトウェア トレース プリプロセッサ (WPP) を実行するコマンド ライン ツールです。

    TraceWPP は、WDK と Visual Studio を使用してドライバーまたはアプリケーションをビルドする際に、WPP オプションを設定する代替として使用できます。 このツールは、ソース ファイル内のトレース マクロを処理し、WPP トレースを有効にするヘッダー ファイルを作成します。

    TraceWPP のコマンド ライン オプションは、TraceWPP タスクが MSBuild に渡されるときに使用されるものと同じです。 これらのオプションの詳細については、「WPP プリプロセッサ」を参照してください。

    TraceWPP は、WDK の bin\<Platform> のディレクトリにあります。

トレース セッションの制御 (トレース コントローラー)

  • TraceView (TraceView.exe) は GUI ベース のトレース コントローラー および トレース コンシューマーで、特にトレース メッセージをリアルタイムで表示するために設計されています。 トレース セッションの有効化、構成、開始、更新、停止を行います。 このツールは、リアルタイム トレース セッションとトレース ログからのトレース メッセージの書式設定、フィルター処理、およびトレース ログからのトレース メッセージの書式設定、フィルター処理、表示も行います。

    TraceView は、TracepdbTracelogTracefmtの機能を組み合わせて拡張します。 詳細については、TraceView を起動し、[ヘルプ] メニューから [ヘルプ トピック] を選択します。

    TraceView は WDK の tools\<Platform> サブディレクトリにあります。<プラットフォーム> は x86 または x64 です。

  • Tracelog (Tracelog.exe) はコマンド ラインのトレース コントローラーで、リアルタイム セッションとログ セッションの有効化、設定、開始、更新、停止を行います。 Tracelog では、ユーザー モードとカーネル モードのトレース セッション、NT カーネル ロガー トレース セッショングローバル ロガー (ブート) トレース セッションがサポートされています。 このツールでは、遅延プロシージャ 呼び出し (DPC) と割り込みサービス ルーチン (ISR) で消費された時間を測定するためのトレースもサポートされています。

    Tracelog は WDK の tools\<Platform> サブディレクトリにあります。<プラットフォーム> は x86 または x64 です。

  • Logman (Logman.exe) は、パフォーマンス カウンターとイベント トレースのログ記録を制御するために特に設計された、非常に機能的な GUI ベースの トレース コントローラーです。

    Logman は Windows XP 以降のバージョンの Windows に含まれています。 このツールの使用方法の詳細については、「Logman」を参照してください。

TMF ファイルの作成

  • Tracepdb (Tracepdb.exe) はコマンド ライン サポート ツールで、PDB シンボル ファイルのトレース メッセージ書式設定命令からトレース メッセージ形式 (TMF) ファイルを作成します。

    トレース メッセージを表示するツールの Tracefmt(Tracefmt.exe) と TraceView(TraceView.exe) では、TMF ファイルの書式設定命令を使用して、トレース メッセージの書式設定と表示を行うことができます。

    Tracefmt では、PDB シンボル ファイルから TMF ファイルを作成することもできます。

    Tracepdb と Tracefmt は、WDK の tools\tracing\<Platform> サブフォルダーにあります。<プラットフォーム> は x86 または x64 です。

トレース メッセージの書式設定と表示 (トレース コンシューマー)

  • Tracefmt は、コマンドラインのトレース コンシューマーで、リアルタイムのトレース セッションまたはトレース ログからトレース メッセージ (TraceMessage) のファイルへの書き込みや、コマンド プロンプト ウィンドウへの表示を行います。

  • Tracerpt (Tracerpt.exe) は、コマンドラインのトレース コンシューマー で、トレース イベント (TraceEvent) とパフォーマンス カウンターの初期設定を行い、それらを CSV または XML ファイルに書き出します。 また、イベントを分析し、概要レポートを生成します。

    Tracerpt は Windows XP 以降のバージョンの Windows に含まれています。 このツールの使用方法の詳細については、「Tracerpt」を参照してください。

  • TraceView は GUI ツールで、トレース コントローラーとトレース コンシューマーでもあります。リアルタイムのトレース セッションやトレース ログから、トレースメッセージ (TraceMessage) を書式設定し、表示します。 トレース メッセージが表形式で表示されるため、フィルター処理と参照が容易になります。

デバッガーでのトレース イベントの表示

  • デバッグ ツールには、!wmitraceが含まれています。これは、トレース セッションバッファー内のトレース メッセージがログファイルに書き込まれたり、表示用に配信されたりする前に表示する、特殊なデバッガー拡張機能です。

  • Tracelog および TraceView は、アタッチされている KD または Windbg にトレース メッセージをリダイレクトできます。 詳細については、Tracelog の -kd パラメーターと TraceView の Windbg オプションを参照してください。

DPC と ISR の実行時間の分析

  • Service Pack 2 (SP2) 以降の Windows XP では、Tracelog を使用して NT カーネル ロガー トレース セッションで遅延プロシージャ コール (DPC) イベントと割り込みサービス ルーチン (ISR) イベントをログに記録し、Tracerpt を使用してログから概要レポートを作成できます。 このツールの使用方法の詳細については、例を含め、Tracelog を参照してください