Share via


デバッグ情報収集のための IntelliTrace の構成

IntelliTrace のコレクションの設定の変更時に Visual Studio Ultimate で IntelliTrace を使用してデバッグしている間に表示される情報量を制御できます。 これらの設定は、すべてのプロジェクトとソリューションに適用され、デバッグ セッションや Visual Studio セッションが変わっても維持されます。

  • イベント コレクションの構成

  • 関数呼び出しコレクションの構成

  • モジュール コレクションの構成

イベント コレクションの構成

IntelliTrace が常に収集するデバッガー イベントと例外を除き、特定の IntelliTrace イベントの収集をオンまたはオフにできます。 IntelliTrace イベントは、デバッガー イベント、例外、.NET Framework イベント、およびデバッグに役立つその他のシステム イベントです。 「IntelliTrace を使用したコード実行の記録によるアプリのデバッグ」を参照してください。

  1. Visual Studio Ultimate で、IntelliTrace がオンになっていることを確認します。

    Visual Studio の IntelliTrace の有効化または無効化

    注意

    [IntelliTrace を有効にする] をオフにすると、すべてのカスタム設定がオフになります。

  2. 収集するイベントとイベント カテゴリを選択します。

    IntelliTrace イベントの収集の構成

  3. 必要に応じて、デバッグ セッションを再開します。 IntelliTrace でのデバッグ開始の詳細については、「IntelliTrace によるデバック中のコード実行の記録」を参照してください。

IntelliTrace が IntelliTrace イベントについて収集するデータとは

  • デバッガーのイベント

    パフォーマンスを向上するため、IntelliTrace はデバッガー イベントのすべての値を記録しません。 代わりに、次の値を記録します。

    • [ローカル] ウィンドウの値。 これらの値を確認するために [ローカル] ウィンドウを開いたままにします。

    • [自動変数] ウィンドウが開いているときにのみ [自動変数] ウィンドウの値

    • 値を表示するためにソース ウィンドウの変数の上にマウス ポインターを移動すると表示されるデータヒントの値。 IntelliTrace は、固定されたデータヒントの値は収集しません。

  • 例外

    IntelliTrace は、次のような種類の例外の種類とメッセージを記録します。

    • 例外がスローおよびキャッチされた場合の処理済みの例外

    • ハンドルされない例外

  • .NET Framework イベント

    既定では、IntelliTrace は最も一般的な .NET Framework のイベントを記録します。 次のように記述します。

    • ファイル アクセス イベントの場合、IntelliTrace はファイル名を収集します。

    • チェック ボックスの確認イベントの場合、IntelliTrace はチェック ボックスの状態とテキストを収集します。

関数呼び出しコレクションの構成

呼び出しのコレクションがオンになっている場合、従来のデバッグから IntelliTrace によるデバッグに切り替えて、コードをステップ実行したり、呼び出し履歴を確認したりできます。 これを有効にするには、デバッグ セッションを開始する前に呼び出しのコレクションをオンにします。 「IntelliTrace を使用したコード実行の記録によるアプリのデバッグ」を参照してください。

  1. Visual Studio Ultimate で、[IntelliTrace イベントと呼び出し情報] をオンまたはオフにします。

    IntelliTrace の呼び出し収集の構成

  2. 必要に応じて、デバッグ セッションを再開します。 IntelliTrace でのデバッグ開始の詳細については、「IntelliTrace によるデバック中のコード実行の記録」を参照してください。

注意

呼び出しコレクションをオンにすると、アプリの速度が大幅に低下する可能性があります。さらに、ディスクに保存される IntelliTrace ログ ファイル (.iTrace ファイル) のサイズが増加する可能性があります。これらの影響を最小限に抑えるには、必要なモジュールのみから呼び出し情報を収集するようにします。.iTrace ファイルの最大サイズを変更するには、[ツール][オプション][IntelliTrace][詳細設定] の順に選択します。

IntelliTrace が関数呼び出しについて収集するデータとは

各関数呼び出しについて、IntelliTrace は次のデータを記録します。

  • 関数名

  • 関数のエントリ ポイントでパラメーターとして渡され、関数の終了ポイントで返されるプリミティブ データ型の値

  • 読み取りまたは変更されたときの自動プロパティの値

  • null かどうかの場合以外の値を除く、1 番目のレベルの子オブジェクトへのポインター

注意

IntelliTrace は、配列の最初の 256 個のオブジェクトと文字列の最初の 256 文字のみを収集します。

モジュール コレクションの構成

IntelliTrace で収集される呼び出し情報の量を制御するには、目的のモジュールのみを指定します。 これにより、収集時のアプリのパフォーマンスを向上させることができます。 IntelliTrace が呼び出し情報を収集していることを確認するには、[ツール][オプション][IntelliTrace][全般] の順に選択します。

ヒント

モジュールを除外することもできますが、モジュールを除外しても、サードパーティのモジュールやオープン ソースのモジュールなど、必要のない可能性があるモジュールからのデータが収集されることがあります。

  1. Visual Studio Ultimate で、コレクションに含めるモジュール、またはコレクションから除外するモジュールを指定します。

    複数のモジュールを追加するには、ワイルドカード文字 * を文字列の先頭または末尾に使用します。 モジュール名には、アセンブリ名ではなくファイル名を使用してください。 ファイル パスは使用できません。

    IntelliTrace のモジュール収集の構成

  2. IntelliTrace でのデバッグ開始の詳細については、「IntelliTrace によるデバック中のコード実行の記録」を参照してください。

情報の入手方法

IntelliTrace を使用したコード実行の記録によるアプリのデバッグ

IntelliTrace によるデバック中のコード実行の記録

IntelliTrace スタンドアロン コレクターを使用した稼働中の診断データの収集

ブログ

Visual Studio ALM + Team Foundation Server

フォーラム

Visual Studio デバッガー

ガイダンス

Testing for Continuous Delivery with Visual Studio 2012 – Chapter 6: A Testing Toolbox (Visual Studio 2012 を使用した絶え間のない配信のためのテスト – 第 6 章: テスト ツールボックス)

ビデオ

Channel 9: 稼働中のデータ収集および分析