Visual Studio と IntelliTrace を使用して発行済みの Azure クラウド サービスをデバッグする

Note

この記事は Azure Cloud Services (クラシック) に適用されます。これは新規のお客様向けには非推奨となっており、2024 年 8 月 31 日に廃止されます。 このテクノロジを使用して構築された既存のサービスは、引き続き Azure Cloud Services (延長サポート) を通じてサポートされます。 新しい開発では、Azure App ServiceAzure FunctionsAzure Container Apps など、特定の目的に合わせて設計された新しいサービスの種類を使用することをお勧めします。 利用可能なサービスの最新の一覧については、「Azure 製品のディレクトリ」を参照してください。

IntelliTrace を使用すると、ロール インスタンスを Azure で実行する際に広範なデバッグ情報を記録できます。 問題の原因を調べる必要がある場合は、IntelliTrace ログを使用して、コードが Azure で実行されているかのように Visual Studio から調査することができます。 実際には、IntelliTrace は Azure アプリケーションが Azure のクラウド サービスとして実行されている際にキー コードの実行および環境データを記録し、その記録されたデータを Visual Studio で再生できるようにします。

Visual Studio Enterprise がインストールされており、Azure アプリケーションが .NET Framework 4 以降のバージョンを対象としている場合に IntelliTrace を使用することができます。 IntelliTrace は、Azure ロールの情報を収集します。 これらのロールの仮想マシンは、常に 64 ビット オペレーティング システムを実行します。

代わりに、リモート デバッグを使用して、Azure で実行されているクラウド サービスに直接接続することができます。

重要

IntelliTrace は、デバッグ シナリオのみを対象としており、運用環境のデプロイには使用できません。

前提条件

IntelliTrace の Azure アプリケーションを構成する

IntelliTrace を Azure アプリケーションで有効にするには、Visual Studio Azure プロジェクトからアプリケーションを作成し、発行する必要があります。 IntelliTrace は Azure に発行する前に Azure アプリケーション向けに構成する必要があります。 IntelliTrace を構成せずにアプリケーションを発行する場合は、プロジェクトを再発行する必要があります。 詳細については、Visual Studio を使用した Azure Cloud Services プロジェクトの発行に関する記事をご覧ください。

  1. Azure アプリケーションをデプロイする準備ができたら、プロジェクトのビルド ターゲットが [デバッグ]に設定されていることを確認します。

  2. ソリューション エクスプローラーでプロジェクトを右クリックし、コンテキスト メニューの [発行] を選択します。

  3. [Azure アプリケーションの公開] ダイアログで Azure サブスクリプションを選択し、[次へ] をクリックします。

  4. [設定] ページで [詳細設定] タブを選択します。

  5. クラウドへの発行時にアプリケーションの IntelliTrace ログを収集するには、[IntelliTrace を有効にする] をオンにします。

  6. IntelliTrace の基本構成をカスタマイズするには、[IntelliTrace を有効にする] の横の [設定] をクリックします。

    IntelliTrace の設定リンク

  7. [IntelliTrace の設定] ダイアログで、ログに記録するイベント、呼び出し情報を収集するかどうか、ログの収集対象となるモジュールとプロセス、記録に割り当てる領域のサイズを指定できます。 IntelliTrace の詳細については、 IntelliTrace によるデバッグに関するページを参照してください。

    IntelliTrace の設定

IntelliTrace ログは、IntelliTrace 設定で指定された最大サイズの循環ログ ファイルです(既定のサイズは 250 MB)。 IntelliTrace ログは、仮想マシンのファイル システム内のファイルに収集されます。 ログを要求すると、スナップショットがその時点で取得され、ローカル コンピューターにダウンロードされます。

Azure クラウド サービスが Azure に発行されたら、次の図に示すように、サーバー エクスプローラーの Azure ノードから IntelliTrace が有効になっているかどうかを確認できます。

サーバー エクスプローラー - 有効化された IntelliTrace

ロール インスタンスの IntelliTrace ログをダウンロードする

Visual Studio で、次の手順に従ってロール インスタンスの IntelliTrace ログをダウンロードできます。

  1. サーバー エクスプローラー[クラウド サービス] ノードを展開し、ログをダウンロードするロール インスタンスを見つけます。

  2. ロール インスタンスを右クリックし、コンテキスト メニューの [IntelliTrace ログの表示] を選択します。

    [IntelliTrace ログの表示] メニュー オプション

  3. IntelliTrace ログは、ローカル コンピューター上のディレクトリのファイルにダウンロードされます。 IntelliTrace ログを要求するたびに、新しいスナップショットが作成されます。 ログのダウンロード中、Visual Studio の [Azure のアクティビティ ログ] ウィンドウに操作の進行状況が表示されます。 次の図に示すように、操作の行項目を展開して詳細を表示することができます。

VST_IntelliTraceDownloadProgress

IntelliTrace ログのダウンロード中も、Visual Studio での作業を続行することができます。 ログのダウンロードが完了すると、Visual Studio でログが開きます。

Note

IntelliTrace ログには、フレームワークによって生成され、後で処理される例外が含まれている場合があります。 内部のフレームワーク コードでは、このような例外がロールの起動時の正常な処理として生成されるため、無視しても問題ありません。