次の方法で共有


例4: トレース セッションの更新

トレース セッションの実行中に、リアルタイムまたはログに記録されたトレース セッションの次のプロパティを更新できます。

  • リアルタイム トレース セッションをトレース ログ セッションに変換します (-fを使用)。

  • 既存のトレース ログ セッションの新しいトレース ログを作成します (-fを使用)。

  • -rtを使用して、既存のトレース ログ セッションにリアルタイムのトレース メッセージ配信を追加します。

  • (-maxを使用して) バッファーの最大数を変更しますが、バッファーの最小数は変更しません。

  • フラッシュ時間間隔を (-ftを使用して) 変更します。

  • トレース バッファーをフラッシュします (-tracelog -flush を使用 )。

tracelog -update コマンドを使用して、トレース プロバイダーのフラグとレベルを変更することはできません。 代わりに、「例 5: トレース プロバイダーの有効化」に示すように、 tracelog -enable コマンドを使用します。

tracelog -update コマンドでは 、 -rt パラメーターと -f パラメーターの動作が異 なります。 -rt パラメーターは、トレース ログ セッションにリアルタイムメッセージ配信を追加します。 その結果、新しいトレース メッセージがトレース コンシューマーとトレース ログに直接送信されます。 ただし、トレース ログ セッションにリアルタイム メッセージ配信を追加する前に、 tracelog -flush コマンドを使用してバッファーを フラッシュ する必要があります。 -f パラメーターを使用してリアルタイム トレース セッションを更新すると、リアルタイム メッセージ配信がトレース ログへの配信に置き換えられます。 その結果、新しいトレース メッセージはトレース ログにのみ送信されます。トレース コンシューマーに直接送信されなくなります。

次のコマンドは、"MyTrace" という名前のリアルタイム トレース セッションをトレース ログ セッションに変更します。 このコマンドでは、 -f パラメーターを使用して、ログ ファイル C:\tracing\MyTrace.etl の場所を指定します。 また、値が 35 の -max パラメーターを使用して、バッファーの最大数を 35 に増やします。

tracelog -update MyTrace -f c:\tracing\mytrace.etl -max 35

これに対して、Tracelog には、変更されたプロパティを含む、トレース セッションのプロパティが表示されます。

このコマンドの結果として、プロバイダーによって生成されたすべての新しいトレース メッセージと、コマンドの送信時にバッファーに格納されているすべてのトレース メッセージがログ ファイルにのみ書き込まれます。 リアルタイム トレース セッションのように、トレース コンシューマーに直接送信されなくなります。

トレース メッセージがトレース コンシューマーとトレース ログに送信されるように、リアルタイム トレース セッションにトレース ログを追加するには、次のコマンドに示すように、 -rt パラメーターと -f パラメーターの両方を含めます。

tracelog -update MyTrace -rt -f c:\tracing\mytrace.etl -max 35

セッションの実行中にトレース バッファーをフラッシュすることもできます。 これは、フラッシュ タイマーと連携しない強制フラッシュです。 フラッシュ タイマーが期限切れになったとき、およびトレース セッションが停止すると、システムによってバッファーが再びフラッシュされます。

既存のトレース セッションのバッファーをフラッシュするには、次の 例に示すように -flush パラメーターを使用します。 -flush パラメーターは、tracelog -update コマンドのサブパラメーターではありません。

tracelog -flush MyTrace

これに対して、Tracelog はトレース セッションの変更されたプロパティを表示します。