Azure App Service アプリに対して Profiler を有効にする

Application Insights Profiler は、Azure App Service ランタイムの一部として事前インストールされています。 Profiler は、Basic 以上のサービス レベルを使用することで、App Service で実行されている ASP.NET および ASP.NET Core アプリで実行できます。 Application Insights SDK をアプリケーションのビルド時に含めている場合でも、こちらの手順に従ってください。

Linux 上で Profiler を有効にするには、ASP.NET Core Azure Linux Web アプリの手順を実施してください。

Note

Application Insights Profiler のコードなしインストールは .NET Core サポート ポリシーに準拠します。 サポートされているランタイムの詳細については、.Net Core サポート ポリシーに関するページを参照してください。

前提条件

[Always On] 設定が有効になっていることを確認する

  1. Azure portal で App Service インスタンスに移動します。

  2. 左側のウィンドウの [設定] で、[構成] を選択します。

    Screenshot that shows selecting Configuration on the left pane.

  3. [全般設定] タブを選択します。

  4. [Always On]>[オン] が選択されていることを確認します。

    Screenshot that shows the General tab on the Configuration pane showing that Always On is enabled.

  5. 変更した場合は、 [保存] を選択します。

Application Insights と Profiler を有効にする

次のセクションでは、同じサブスクリプションまたは異なるサブスクリプションに対して Application Insights を有効にする方法について説明します。

Application Insights と App Service が同じサブスクリプションにある場合

お使いの App Service のインスタンスと同じサブスクリプションに Application Insights リソースがある場合:

  1. 左側のウィンドウの [設定] で、[Application Insights] を選択します。

    Screenshot that shows selecting Application Insights on the left pane.

  2. [Application Insights][有効化] を選択します。

  3. Application Insights リソースがアプリに接続されていることを確認します。

    Screenshot that shows enabling Application Insights on your app.

  4. 下にスクロールし、お使いのアプリに応じて [.NET] または [.NET Core] タブを選択します。

  5. [コレクション レベル]>[推奨] が選択されていることを確認します。

  6. [Profiler][オン] を選択します。

    前に [コレクション レベル] で [Basic] を選択した場合、Profiler の設定は無効になります。

  7. [適用]>[はい] を選択して確定します。

    Screenshot that shows enabling Profiler on your app.

Application Insights と App Service が異なるサブスクリプションにある場合

Application Insights リソースが App Service のインスタンスとは異なるサブスクリプションにある場合は、App Service インスタンスのアプリ設定を作成して Profiler を手動で有効にする必要があります。 テンプレートやその他の手段を使用して、これらの設定の作成を自動化できます。 Profiler を有効にするために必要な設定を次に示します。

アプリ設定
APPINSIGHTS_INSTRUMENTATIONKEY Application Insights リソースの iKey
APPINSIGHTS_PROFILERFEATURE_VERSION 1.0.0
DiagnosticServices_EXTENSION_VERSION ~3

次のものを使用してこれらの値を設定します。

リージョン クラウドの Profiler を有効にする

現在、エンドポイントの変更が必要なリージョンは Azure Government21Vianet によって運営される Microsoft Azure のみです。

アプリ設定 米国政府のクラウド China Cloud
ApplicationInsightsProfilerEndpoint https://profiler.monitor.azure.us https://profiler.monitor.azure.cn
ApplicationInsightsEndpoint https://dc.applicationinsights.us https://dc.applicationinsights.azure.cn

プロファイル インジェストに対して Microsoft Entra 認証を有効にする

Application Insights Profiler は、プロファイル インジェストに対する Microsoft Entra 認証をサポートします。 アプリケーションのすべてのプロファイルが取り込まれるようにするには、アプリケーションを認証し、必要なアプリケーション設定を Profiler エージェントに提供する必要があります。

Profiler が Microsoft Entra 認証をサポートするのは、アプリケーションで Application Insights SDK を使用して、Microsoft Entra ID を参照および構成するときのみです。

プロファイル インジェストに対して Microsoft Entra ID を有効にするには:

  1. Application Insights リソースに対して認証するマネージド ID を作成して App Service に追加します。

    1. システム割り当てマネージド ID のドキュメント

    2. ユーザー割り当てマネージド ID のドキュメント

  2. Application Insights リソースで Microsoft Entra ID を構成して有効にします

  3. 次のアプリケーション設定を追加して、使用するマネージド ID を Profiler エージェントに知らせます。

    • システム割り当て ID の場合:

      アプリ設定
      APPLICATIONINSIGHTS_AUTHENTICATION_STRING Authorization=AAD
    • ユーザー割り当て ID の場合:

      アプリ設定
      APPLICATIONINSIGHTS_AUTHENTICATION_STRING Authorization=AAD;ClientId={Client id of the User-Assigned Identity}

Profiler を無効にする

個々のアプリのインスタンスの Profiler を停止または再起動するには、次のようにします。

  1. 左側のウィンドウの [設定] で、[WebJobs] を選択します。

    Screenshot that shows selecting web jobs on the left pane.

  2. ApplicationInsightsProfiler3 という名前の Web ジョブを選択します。

  3. [停止] を選択します。

    Screenshot that shows selecting stop for stopping the webjob.

  4. [はい] を選択して確定します。

パフォーマンスの問題をできるだけ早く検出するために、すべてのアプリで Profiler を有効にすることをお勧めします。

WebDeploy を使用して Web アプリケーションへの変更をデプロイするときに、Profiler のファイルを削除できます。 App_Data フォルダーを除外しておけば、デプロイ中に削除されることを防ぐことができます。

次のステップ