例11: プライベート トレース セッションの開始

次のコマンドは、トレース用にインストルメント化されたユーザー モード アプリケーションのプライベート トレース セッションを開始します。

tracelog -start MyTrace -guid MyProvider.guid -um

プライベート トレース セッションのリアルタイム トレースを実行できない点を除き、同じパラメーターを使用して、標準トレース セッションに使用するプライベート トレース セッションをカスタマイズできます。

ヒープ メモリ プロセス ロガー。 次のコマンドは、プロセス内のヒープ メモリ イベントをトレースするプライベート セッションを開始します。 トレース用にインストルメント化されていないユーザー モード プロセスでも機能します。

この機能では、Windows に組み込まれているプロバイダーを使用するため、このコマンドは、トレース メッセージを生成しているプロバイダー (GUID を使用) ではなく、トレース対象のプロセス (プロセス ID を使用) を指定します。

このコマンドでは、 -um パラメーターを使用してプライベート (ユーザー モード) トレース セッションを指定し、 -heap パラメーターを使用してヒープ メモリ トレースを指定します。 -pids パラメーターを使用して、トレースするプロセスのプロセス ID を指定します。 この場合、コマンドには ID 7008 の 1 つのプロセスが含まれます。

このコマンドでは、省略可能 な -f パラメーターを使用してトレース ログ ファイルを指定します。 他の トレース ログ パラメーターのほとんどを使用してトレース セッションをカスタマイズできることを示す -f パラメーターが含まれています。

tracelog -start MyTrace -um -heap -pids 1 7008 -f testtrace.etl

クリティカル セクション プロセス ロガー。 次のコマンドは、プロセス内のクリティカル セクション イベントをトレースするプライベート セッションであるクリティカル セクション ロガーを開始します。 このコマンドは、Windows に含まれるプロバイダー (GUID、CritsecGUID で識別されます) を使用するため、トレース用にインストルメント化されていないプロバイダーであっても、任意のユーザー モード プロセスで使用できます。

コマンド構文は、ヒープ メモリ プロセス ロガーの構文と同じですが、 -heap パラメーターの代わりに -critsec パラメーターを使用する点が異なります。

この例では、このコマンドは 2 つの関連するプロセスでクリティカル セクション プロセス ロガーを開始します。 したがって、 #PIDs 変数の値は 2 で、プロセス ID 48065164 の両方がリストされます。

tracelog -start MyTrace -um -critsec -pids 2 4806 5164 -f testtrace.etl