Microsoft Azure Portal を使用して、Azure App Service の Web アプリケーションに AppDynamics Azure サイト拡張を追加できます。Azure サイト拡張は、ソースファイルにアクセスできない、またはソースファイルを変更または再コンパイルする必要はないけれども、その Azure プロジェクトやソリューションをモニタする運用チームによって使用されます。

インストールの準備

Microsoft Azure サイト拡張用の AppDynamics をインストールするには、以下が必要です。

  • モニタする Azure web アプリケーション。

以前のバージョンからアップグレードする場合は、「AppDynamics Azure サイト拡張のアップグレード」を参照してください。

AppDynamics Azure サイト拡張の追加

Azure web アプリケーションのサイト拡張と同様に、AppDynamics Azure サイト拡張を追加します。

  1. Microsoft Azure Portal にログインします。
  2. Web アプリケーションを参照します。

    環境変数を使用して .NET エージェントを設定するには、AppDynamics Azure サイト拡張をインストールする前に環境変数を追加します。「環境変数を使用したエージェントの設定」を参照してください。

  3. [DEVELOPMENT TOOLS] リストから [Extensions] をクリックします。
  4. [+Add ] をクリックして、web アプリケーションに追加する AppDynamics Azure Site Extension  のバージョンをインストールします。
    AppDynamics Azure サイト拡張をインストールすると、インストールされている拡張リストに表示されます。

ARM テンプレートを使用した AppDynamics Azure サイト拡張の追加

Azure Resource Manager(ARM)テンプレートを使用して Azure アプリケーションサービスに AppDynamics Azure サイト拡張を展開できます。

次の手順では、Visual Studio Community 2017 を使用します。 

ARM テンプレートを作成して展開するには、次の手順に従います。

  1. Visual Studio の web アプリケーションから、File > New Project を選択します。
  2. [Cloud] をクリックしてから [Azure Resource Group] をクリックし、[OK] をクリックします。
  3. [Select Azure Template] ダイアログから、[Web App] をクリックしてから [OK] をクリックします。
  4. 新しく作成したリソースグループ下で、Website.json ファイルをクリックします。
  5. 左側のペインの JSON アウトラインで、[resources] を右クリックし、[Add New Resource] を選択します。
  6. [Add Resource] ダイアログボックスで、[Application Settings for Web Apps] を選択し、名前を入力して [OK.] をクリックします
  7. [properties] セクションで、AppDynamics コントローラの情報を入力します。次に、AppDynamics のアプリケーションプロパティを含む Website.json ファイルの例を示します。
  8. 次のように、Azure サイト拡張の詳細を含む新しい [apiVersion] セクションを追加します。

Website.json File

コピーまたは貼り付けのサンプルテキストを次に示します。

{
      "apiVersion": "2015-08-01",
      "name": "[variables('webSiteName')]",
      "type": "Microsoft.Web/sites",
      "location": "[resourceGroup().location]",
      "tags": {
        "[concat('hidden-related:', resourceGroup().id, '/providers/Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]": "Resource",
        "displayName": "Website"
      },
      "dependsOn": [
        "[resourceId('Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]"
      ],
      "properties": {
        "name": "[variables('webSiteName')]",
        "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', parameters('hostingPlanName'))]"
      },
      "resources": [
        {
          "apiVersion": "2016-08-01",
          "name": "appsettings",
          "type": "config",
          "dependsOn": [
            "[resourceId('Microsoft.Web/Sites', variables('webSiteName'))]"
          ],
          "properties": {
            "appdynamics.controller.hostName": "mycompany.saas.appdynamics.com",
            "appdynamics.controller.port": "443",
            "appdynamics.controller.ssl.enabled": "true",
            "appdynamics.agent.accountName": "mycompany",
            "appdynamics.agent.accountAccessKey": "[parameters('AppDAccessKeyInKeyVault')]",
            "appdynamics.agent.applicationName": "HelloWorldSecureAppDKey",
            "appdynamics.agent.tierName": "TestTier",
            "appdynamics.agent.nodeName": "TestNode"
          }
        },
        {
          "apiVersion": "2015-08-01",
          "name": "AppDynamics.WindowsAzure.SiteExtension.4.5.Release",
          "type": "siteextensions",
          "dependsOn": [
            "[resourceId('Microsoft.Web/Sites', variables('webSiteName'))]"
          ]
        },
CODE

コントローラ接続の設定

AppDynamicsコントローラへ接続する.NETエージェントの構成方法には以下のオプションがあります。

  • Kudu コンソールを使用してコントローラ接続を設定します。
  • 環境変数を使用して、コントローラ接続の設定を構成します。

エージェントとコントローラの接続」を参照してください。

Kudu コンソールを使用したエージェントの設定

web アプリケーションに AppDynamics Azure サイト拡張を追加する場合は、Kudu コンソールを使用して .NET エージェントをインタラクティブに設定できます。

  1. Kudu コンソールで [AppDynamics Controller Configuration] ページに移動します。
    http://{web app}.scm.azurewebsites.net/appdynamics/
    例:https://myazureexample.scm.azurewebsites.net/appdynamics/
  2. [AppDynamics Controller Configuration] ページで、コントローラの接続情報を入力します。例:
    AppDynamics Controller Configuration
  3. [Validate] をクリックして AppDynamics コントローラへの接続をテストし、設定を保存します。
  4. web アプリケーションを再起動します。
    web アプリケーションに何らかの負荷をかけると、AppDynamics コントローラ UI のフローマップで表示できます。

環境変数を使用したエージェントの設定

無人設定用に、環境変数を使用して .NET エージェントを設定できます。

.NET エージェントを設定するには、AppDynamics Azure サイト拡張をインストールする前に環境変数を追加します。

  1. web アプリケーションの [SETTINGS > Application Settings] に移動します。
  2. .NET エージェント環境変数を追加しますApp settings:
    • appdynamics.controller.hostName:AppDynamics コントローラのアドレス
    • appdynamics.controller.port:コントローラポート
    • appdynamics.agent.accountName:コントローラへのログイン時に使用するアカウント名
    • appdynamics.agent.accountAccessKey:コントローラへのログイン時に使用するアカウントキー
    • appdynamics.agent.applicationName:コントローラのビジネスアプリケーション名
    • appdynamics.controller.ssl.enabled:コントローラへの SSL 接続を有効にする場合は、True に設定し、それ以外の場合は False に設定します。
    • appdynamics.proxy.hostName:プロキシホストの名前

    • appdynamics.proxy.authDomain:(Windows のみ)プロキシサーバのドメイン名
    • appdynamics.proxy.port:プロキシのポート番号

    • appdynamics.proxy.authName:プロキシに接続するユーザの名前

    • appdynamics.proxy.authPassword:プロキシに接続するユーザのパスワード

    • appdynamics.enable.tls12:Transport Layer Security(TLS)1.2 を有効にする場合は、True に設定し、それ以外の場合は False に設定します。

  3. web アプリケーションを再起動します。web アプリケーションに何らかの負荷をかけると、AppDynamics コントローラ UI のフローマップで表示できます。

モニタする WebJobs の指定

.NET エージェントがモニタする WebJobs を指定するには、APPDYNAMICS.PROCESSLIST 環境変数を使用します。

環境変数:APPDYNAMICS.PROCESSLIST
タイプ:「|」で区切られた文字列
デフォルト:なし。未定義の場合、エージェントはアプリケーションサービスで実行されているすべての WebJob をインストゥルメント化します。定義されている場合、.NET エージェントは指定されたプロセスのみをインストゥルメント化します。

要否:いいえ

使用例:

  • 環境 1:WebJobs を使用しない Azure アプリケーションサービス。Appdynamics .NET エージェントサイト拡張がインストールされ、設定されています。値 w3wp.exe を使用して環境変数 AppDynamics.ProcessList を定義すると、すべてのアプリケーションサービスに追加されるデフォルトの Daasrunner.exe WebJob はインストゥルメント化されません。
  • 環境 2:2 つの WebJobs webjob1.exewebjob2.exe を使用する Azure アプリケーションサービス。Appdynamics .NET エージェントサイト拡張がインストールされ、設定されています。値 w3wp.exe を使用して環境変数 AppDynamics.ProcessList を定義すると、実際の web アプリケーションを提供するワーカープロセスだけがインストゥルメント化され、WebJobs はインストゥルメント化されません。環境変数の値を w3wp.exe|webjob1.exe に設定すると、web アプリケーションを提供するワーカープロセスと webjob1.exe はインストゥルメント化されますが、webjob2.exe はインストゥルメント化されません。Azure アプリケーションサービスのアプリケーション設定から AppDynamics.ProcessList を削除すると、Daasrunner.exe を含むすべての WebJobs がインストゥルメント化されます(web アプリケーションを提供するワーカープロセスなど)。

AppDynamics Azure サイト拡張のアップグレード

web アプリケーションの [Extensions] タブをクリックすると、AppDynamics Azure サイト拡張の現在インストールされているバージョンが Microsoft Azure ポータルに表示されます。インストール済み拡張リストの [Update Available] 列では、より最近マイナーリリースされた使用可能な .NET エージェントがあるかどうかが示されます。その場合は、クリックしてリストから拡張を更新できます。

.NET エージェントのメジャーバージョンのアップグレード

AppDynamics は、.NET エージェントのメジャーリリースバージョンを個別のサイト拡張として維持します。そのため、新しいメジャーリリースにアップグレードする前に、インストールされているバージョンの AppDynamics Azure サイト拡張をアンインストールする必要があります。

  1. Microsoft Azure Portal にログインします。
  2. web アプリケーションを停止します。
  3. インストールされている拡張のリストから AppDynamics Azure サイト拡張をクリックし、[Delete] をクリックしてアンインストールします。
  4. AppDynamics Azure サイト拡張の新しいバージョンを通常どおりインストールします。

.NET エージェント 4.2 からアップグレードし、環境変数の設定を使用した場合は、web アプリケーション環境変数を更新する必要があります。「環境変数を使用したエージェントの設定」を参照してください。APPD_UNATTENDED 変数が不要になることに注意してください。