次の手順では、Azure サービスファブリックの AppDynamics の .NET マイクロサービス エージェントを展開する方法について説明します。

インストールする前に

nuget.org から、NuGet パッケージ AppDynamics.Agent.Distrib.Micro.Windows を https://www.nuget.org/packages/AppDynamics.Agent.Distrib.Micro.Windows/ をダウンロードし、フォルダに展開します。次の手順を使用して、エージェントパッケージを展開します。

環境に合わせて次の手順を選択します。

Visual Studio を使用したパッケージの展開

  1. エディタから、公開されているアプリケーションルート内のフォルダで ServiceManifest.xml  を開きます。
  2. 各 CodePackage に次の環境変数を追加します。

    <CodePackage ...>
      <EntryPoint>
        ...
      </EntryPoint>
      <EnvironmentVariables>
        <EnvironmentVariable Name="COR_ENABLE_PROFILING" Value="1" />
        <EnvironmentVariable Name="COR_PROFILER" Value="{39AEABC1-56A5-405F-B8E7-C3668490DB4A}" />
        <EnvironmentVariable Name="COR_PROFILER_PATH" Value=AppDynamics/AppDynamics.Profiler_x64.dll" />
       </EnvironmentVariables>
    </CodePackage>

  3. AppDynamicsConfig.json ファイルをコピーし、<<executable_name>>.AppDynamicsConfig.jsonと名前を変更します。たとえば次のようになります。 <<servicefabricapplicationname>>AppDynamicsConfig.json.

  4. AppDynamics.Agent.dllAppDynamics.Profiler_x64.dllAppDynamicsAgentLog.configAppDynamicsConfig.json を <<nuget_package>>\content\AppDynamics からコピーし、これらのファイルを各サービスプロジェクトの Visual Studio ソリューションのサブフォルダではなく上位レベルに追加します。

  5. AppDynamicsConfig.json のコピーを作成し、名前を <<executable_name>>.AppDynamicsConfig.json に変更します。たとえば <<servicefabricapplicationname>>.AppDynamicsConfig.json.  となります。各サービスプロジェクトのルートに配置します。

    .json ファイルの名前をアプリケーション名に変更する場合は、アプリケーション名の末尾に .exe を付けないでください。

  6. AppDynamics サブフォルダ内のファイルを右クリックし、[Copy Always] を選択します。

  7. 設定情報が含まれる <<executable_name>>.AppDynamicsConfig.json を更新します。

  8. {
    "controller":
    {
    "host":"",
    "port":0,
    "account":"",
    "password":""
    },
    "application":
    {
    "name":""
    }
    }

ノードを指定しないでください。自動的に割り当てられます。ティア の指定はオプションで、自動的に割り当てることができます。

AppDynamicsConfig.json ファイルの詳細については、AppDynamicsConfig.json Fileを参照してください。

次の手順はオプションで、コントローラ/アプリケーション/ティアのサービスインスタンスごとの制御が必要な場合にのみ使用してください。

  1. 各 CodePackage に次の環境変数を追加します。
    <EnvironmentVariable Name="appdynamics.controller.hostName" Value="<<  >>" />
    <EnvironmentVariable Name="appdynamics.controller.port" Value="<<  >>" />
    <EnvironmentVariable Name="appdynamics.agent.accountName" Value="<<  >>" />
    <EnvironmentVariable Name="appdynamics.agent.accountAccessKey" Value="<<  >>" />
    <EnvironmentVariable Name="appdynamics.agent.applicationName" Value="<<  >>" />
    <EnvironmentVariable Name="appdynamics_agent_tier_name" Value="<<  >>" />
  2. ApplicationManifest.xml. を変更します。ServiceManifestImport と CodePackage の各フォルダで、次を追加します。
    • ServiceManifestImport:
      <EnvironmentOverrides CodePackageRef="Code">
        <EnvironmentVariable Name="appdynamics.controller.hostName" Value="<<AppD_ControllerHostName>>" />
        <EnvironmentVariable Name="appdynamics.controller.port" Value="<<AppD_ControllerPort>>" />
        <EnvironmentVariable Name="appdynamics.agent.accountName" Value="<<AppD_AccountName>>" />
        <EnvironmentVariable Name="appdynamics.agent.accountAccessKey" Value="<<AppD_AccountAccessKey>>" />
        <EnvironmentVariable Name="appdynamics.agent.applicationName" Value="<<AppD_ApplicationName>>" />
        <EnvironmentVariable Name="appdynamics_agent_tier_name" Value="<<AppD_Service_Name_TierName>>" />
      </EnvironmentOverrides>
    • Parameters:
      <Parameter Name="AppD_ControllerHostName" DefaultValue="<<Your_Controller_Name>>" />
      <Parameter Name="AppD_ControllerPort" DefaultValue="<<Your_Controller_Port>>" />
      <Parameter Name="AppD_AccountName" DefaultValue="<<Your_Controller_Account_Name>>" />
      <Parameter Name="AppD_AccountAccessKey" DefaultValue="<<Your_Controller_Access_Key>>" />
      <Parameter Name="AppD_ApplicationName" DefaultValue="<<Your_Controller_App_Name>>" />
    • 各サービス:
      <Parameter Name="AppD_%SERVICE_NAME%_TierName" DefaultValue="<<Tier_Name_For_Service>>" />
  3. アプリケーションパッケージの展開時に AppDynamics 設定を指定する必要がある場合は、New-ServiceFabricApplication cmdlet-ApplicationParameter スイッチを使用して実行できるようになりました。

別の IDE を使用したパッケージの展開

  1. エディタから、公開されているアプリケーションルート内の各フォルダで  ServiceManifest.xml  を開きます。
  2. 各 CodePackage に次の環境変数を追加します。

    <CodePackage ...>
      <EntryPoint>
        ...
      </EntryPoint>
      <EnvironmentVariables>
        <EnvironmentVariable Name="COR_ENABLE_PROFILING" Value="1" />
        <EnvironmentVariable Name="COR_PROFILER" Value="{39AEABC1-56A5-405F-B8E7-C3668490DB4A}" />
        <EnvironmentVariable Name="COR_PROFILER_PATH" Value=AppDynamics/AppDynamics.Profiler_x64.dll" />
       </EnvironmentVariables>
    </CodePackage>

  3. PowerShell を使用して、AppDynamics.Agent.dll AppDynamics.Profiler_x64.dllAppDynamicsAgentLog.configAppDynamicsConfig.json を <nuget_package>\content\AppDynamics から実行可能ファイルが含まれるコードパッケージフォルダに展開します。

  4. AppDynamicsConfig.json ファイルのコピーを作成し、名前を <<executable_name>>.AppDynamicsConfig.json に変更します。たとえば、 <<servicefabricapplicationname>>.AppDynamicsConfig.json.

    .json ファイルの名前をアプリケーション名に変更する場合は、アプリケーション名の末尾に .exe を付けないでください。

  5. AppDynamicsConfig.json のコピーを作成して、<<executable_name>>.AppDynamicsConfig.json に名前を変更します。たとえば、<<servicefabricapplicationname>>.AppDynamicsConfig.json.。各サービスプロジェクトのルートに配置します。

  6. 設定情報が含まれる <<executable_name>>.AppDynamicsConfig.json を更新します。

  7. {
    "controller":
    {
    "host":"",
    "port":0,
    "account":"",
    "password":""
    },
    "application":
    {
    "name":""
    }
    }

ノードを指定しないでください。自動的に割り当てられます。ティア   の指定はオプションです。これは自動的に割り当てることができます。

AppDynamicsConfig.json ファイルの詳細については、AppDynamicsConfig.json Fileを参照してください。

次の手順はオプションで、コントローラ/アプリケーション/ティアのサービスインスタンスごとの制御が必要な場合にのみ使用してください。

  1. 各 CodePackage に次の環境変数を追加します。
    <EnvironmentVariable Name="appdynamics.controller.hostName" Value="" />
    <EnvironmentVariable Name="appdynamics.controller.port" Value="" />
    <EnvironmentVariable Name="appdynamics.agent.accountName" Value="" />
    <EnvironmentVariable Name="appdynamics.agent.accountAccessKey" Value="" />
    <EnvironmentVariable Name="appdynamics.agent.applicationName" Value="" />
    <EnvironmentVariable Name="appdynamics_agent_tier_name" Value="" />
  2. ApplicationManifest.xml を変更します。各 ServiceManifestImport および CodePackage フォルダで、次を追加します。
    • ServiceManifestImport:
      <EnvironmentOverrides CodePackageRef="Code">
        <EnvironmentVariable Name="appdynamics.controller.hostName" Value="<<AppD_ControllerHostName>>" />
        <EnvironmentVariable Name="appdynamics.controller.port" Value="<<AppD_ControllerPort>>" />
        <EnvironmentVariable Name="appdynamics.agent.accountName" Value="<<AppD_AccountName>>" />
        <EnvironmentVariable Name="appdynamics.agent.accountAccessKey" Value="<<AppD_AccountAccessKey>>" />
        <EnvironmentVariable Name="appdynamics.agent.applicationName" Value="<<AppD_ApplicationName>>" />
        <EnvironmentVariable Name="appdynamics_agent_tier_name" Value="<<AppD_Service_Name_TierName>>" />
      </EnvironmentOverrides>
    • Parameters:
      <Parameter Name="AppD_ControllerHostName" DefaultValue="<<Your_Controller>>" />
      <Parameter Name="AppD_ControllerPort" DefaultValue="<<Your_ControllerPORT>>" />
      <Parameter Name="AppD_AccountName" DefaultValue="<<Your_Controller_AccountName>>" />
      <Parameter Name="AppD_AccountAccessKey" DefaultValue="<<Your_Controller_AccessKey>>" />
      <Parameter Name="AppD_ApplicationName" DefaultValue="<<Your_Controller_App_Name>>" />
    • 各サービス:
      <Parameter Name="<<AppD_Service_Name_TierName>>" DefaultValue="<<Tier_Name_For_Service>>" />
  3. アプリケーションパッケージの展開時に AppDynamics 設定を指定する必要がある場合は、New-ServiceFabricApplication cmdlet-ApplicationParameter スイッチを使用して実行できるようになりました。