Application Insights スナップショット デバッガー データを表示する

スナップショットが、Azure portal の [Application Insights] ペインの [例外] に表示されます。

ポータルで [Debug Snapshots (デバッグ スナップショット)] を表示して、コール スタックを表示し、各呼び出しスタック フレームで変数を確認できます。 ソース コードによるデバッグ エクスペリエンスをさらに向上させるには、Visual Studio Enterprise でスナップショットを開きます。 また、例外を待たずにスナップポイントを設定し、対話形式でスナップショットを取得できます。

Portal でスナップショットを表示する

アプリケーションで例外が発生してスナップショットが作成されたら、5 から 10 分以内に Azure portal でスナップショットを表示することができます。 スナップショットを表示するには、[エラー] ウィンドウで次のいずれかを実行します。

  • [操作] タブを表示するときに [操作] ボタンを選択します。または、
  • [例外] タブを表示するときに [例外] ボタンを選択します。

Azure portal の [エラー] ページを示すスクリーンショット。

右側のウィンドウで操作または例外を選択して、 [エンドツーエンド トランザクション詳細] ウィンドウを開き、次に例外イベントを選択します。 特定の例外のスナップショットが使用可能な場合、例外の詳細と共に右側のウィンドウに [デバッグ スナップショットを開く] ボタンが表示されます。

例外の [デバッグ スナップショットを開く] ボタンを示すスクリーンショット。

デバッグ スナップショット ビューには、コール スタックと変数ウィンドウが表示されます。 コール スタック ウィンドウでコール スタックのフレームを選択すると、変数ウィンドウでその関数呼び出しのローカル変数とパラメーターを表示できます。

Azure portal で [デバッグ スナップショットを開く] が強調表示されているスクリーンショット。

スナップショットには機密情報が含まれる可能性があります。 既定では、Application Insights Snapshot Debugger ロールが割り当てられている場合にのみスナップショットを表示できます。

Visual Studio 2017 Enterprise 以上でスナップショットを表示する

  1. [Download Snapshot](スナップショットのダウンロード) をクリックして .diagsession ファイルをダウンロードします。このファイルは Visual Studio Enterprise で開くことができます。

  2. .diagsession ファイルを開くには、スナップショット デバッガーの Visual Studio コンポーネントがインストールされている必要があります。 スナップショット デバッガー コンポーネントは、Visual Studio の ASP.NET ワークロードに必要なコンポーネントです。これは、Visual Studio インストーラーの個々のコンポーネント リストから選択することができます。 Visual Studio 2017 バージョン 15.5 より前のバージョンの Visual Studio を使用している場合、拡張機能は Visual Studio Marketplace からインストールする必要があります。

  3. スナップショット ファイルを開くと、Visual Studio の[ミニダンプ デバッグ] ページが表示されます。 [Debug Managed Code](マネージド コードをデバッグする) をクリックして、スナップショットのデバッグを開始します。 例外がスローされたコード行がスナップショットに表示され、プロセスの現在の状態をデバッグできます。

    Visual Studio でのデバッグ スナップショットを示すスクリーンショット。

ダウンロードしたスナップショットには、Web アプリケーション サーバーで検出されたすべてのシンボル ファイルが含まれます。 これらのシンボル ファイルは、スナップショット データをソース コードと関連付けるために必要です。 App Service アプリの場合は、Web アプリを公開するときにシンボル デプロイを有効にしてください。

次の手順

次の手順でスナップショット デバッガーを有効にします。