PHPアプリケーションを異なる仮想ホストまたはFPMプールとして構成している場合があります。複数アプリケーション/単一サーバ(MASS)をサポートすることで、同じサーバで実行するさまざまな PHP アプリケーションを別々のビジネスアプリケーション、ティアまたはノードとして表される異なる AppDynamics エンティティとしてモニタできます。同じPHPサーバーで実行される複数のアプリケーションには別々のメトリック、ダッシュボード、正常性ルール、イベントなどがあります。異なるコントローラ、または別々のAppDynamicsアカウントからでも監視することができます。さまざまな設定を組み合わせ、ご使用のPHPアプリケーション環境全体を監視するのに最適なAppDynamicsモデルを構成することができます。

AppDynamicsでは、1つのサーバーにインストゥルメント化するアプリケーションは10個以下にするよう推奨しています。

ダウンロードとインストール

複数のノードに対してPHPインストールを設定するには、AppDynamicsから単一のエージェントをダウンロードします。

その後、RPM による PHP エージェントのインストール」(RedHat および CentOSX)と「シェルスクリプトによる PHP エージェントのインストール(その他の Linux および Mac OS)の手順を参考にしてエージェントをインストゥルメント化します。インストゥルメント化するアプリケーションのいずれかに適合するアプリケーション/ティア/ノード構成を使用して、必要な設定を構成します。以下に挙げる必要な設定が構成されていることを確認してください。

次に、エージェントがモニタする追加アプリケーションごとに、ご使用の AppDynamics モデルにおけるパフォーマンスメトリックの報告方法を反映するさまざまな設定を含む AppDynamics 構成を追加します。

複数ノードのサポートに必要な構成設定

監視する各アプリケーションの複数ノードのサポートに必要な設定は以下のとおりです。

  • agent.controller.hostName
  • agent.applicationName
  • agent.tierName
  • agent.nodeName
  • agent.accountName

たとえばプロキシサーバ経由で AppDynamics コントローラにデータをルーティングする必要がある場合など、環境に応じて追加の設定を構成する必要があります。

設定の構成場所

PHPエージェントの構成設定の読み込みは、次の3つのファイルから実行されます。

  1. appdynamics_agent .ini
  2. Apache(vhost)またはFMP(fpm-pool)構成 (1を上書き)
  3. Apacheの場合は.htaccess、FPM場合は.user.ini(1、2を上書き)

最初のアプリケーションをインストゥルメント化し、コマンドライン(シェル スクリプト インストール)または環境変数(RPM インストール)で必要な設定を渡すと、これらの設定が appdynamics_agent.ini に書き込まれます。

アプリケーションごとに異なる設定を適用するには、それぞれの vhost または FPM プール構成ブロックで設定を指定することをお勧めします。

Apache構成サンプル

同じサーバ上で実行される 2 つのアプリケーションの仮想ホスト構成の例を以下に示します。

api アプリケーションの仮想ホスト構成

<VirtualHost *:80>
    ServerName api.myhost.com
    DocumentRoot "/var/www/api"
    ErrorLog "/private/var/log/apache2/api_error.log"
    CustomLog "/private/var/log/apache2/api_access.log" common
    
    php_value agent.applicationName API
    php_value agent.tierName api-tier1
    php_value agent.nodeName api-node1
    php_value agent.controller.hostName appd1.saas.appdynamics.com
    php_value agent.controller.port 8080
    php_value agent.accountName customer1
    php_value agent.accountAccessKey 123456789
</VirtualHost>


frontend アプリケーションの仮想ホスト構成

<VirtualHost *:80>
    ServerName www.myhost.com
    DocumentRoot "/var/www/frontend"
    ErrorLog "/private/var/log/apache2/www_error.log"
    CustomLog "/private/var/log/apache2/www_access.log" common
    
    php_value agent.applicationName FrontEnd
    php_value agent.tierName frontend-tier1
    php_value agent.nodeName frontend-node1
    php_value agent.controller.hostName appd1.saas.appdynamics.com
    php_value agent.controller.port 8080
    php_value agent.accountName customer1
    php_value agent.accountAccessKey 123456789
</VirtualHost>

FPM構成サンプル

同じサーバー上で実行される2つのアプリケーションの仮想ホストの例は以下のとおりです。

「api」アプリケーションの.conf 構成

api.conf:

php_value[agent.applicationName] = API
php_value[agent.tierName] = api-tier1
php_value[agent.nodeName] = api-node1
php_value[agent.controller.hostName] = appd1.saas.appdynamics.com
php_value[agent.controller.port] = 8080
php_value[agent.accountName] = customer1
php_value[agent.accountAccessKey] = 123456789


frontend アプリケーションの .conf 構成

www.conf:

php_value[agent.applicationName] = FrontEnd
php_value[agent.tierName] = frontend-tier1
php_value[agent.nodeName] = frontend-node1
php_value[agent.controller.hostName] = appd1.saas.appdynamics.com
php_value[agent.controller.port] = 8080
php_value[agent.accountName] = customer1
php_value[agent.accountAccessKey] = 123456789