Download PDF
Download page PHPエージェントのインストール.
PHPエージェントのインストール
このページでは、Splunk AppDynamics PHP エージェントのインストールの概要について説明します。
インストール概要
コントローラ UI の開始ウィザードは、PHP エージェントの構成およびインストールの手順を説明します。
ウィザードから取得するインストーラは、環境 PATH 変数で指定された PHP ディレクトリを使用して、エージェントのインストール先を決定します。PATH で指定されていない PHP のインストールをインストゥルメント化する場合は、RPM またはスクリプトインストーラを手動で設定して呼び出すことができます。
PHPエージェントはLinuxおよびMacOSマシンで実行されます。PHPエージェントは次のPHP動作環境向けに設計されています。
- 単一のPHPインストールがあります
- 単一のApacheまたはFPMプールでPHPが動作
- 標準パッケージを使用したPHP、Apache、PHP-FPMのインストール
- カスタマイズされていないPHP構成
PHP エージェントは、すべての前提を満たしていない環境でも動作する場合があります。ただし、PHP エージェントとアプリケーションのインストールには十分な注意を払い、ステージング環境で詳細にテストしてください。
はじめに
PHP エージェントをインストール前に、次の手順を実行します。
- サポートされている PHP バージョンを使用していることを確認します。PHP バージョンは次のコマンドを使用して確認できます。
php -i
CODE - PHP エージェントは
enable-debug
構成オプションでビルドされた PHP アプリケーション、またはデバッグシンボルでコンパイルされたビルドでは機能しません。アプリケーションがデバッグシンボルでビルドされているかを確認するには、次のコマンドを使用します。php -i | grep -e "Debug Build"
CODE
応答は以下のようになります。
Debug Build => no
- PHP エージェント ディストリビューションは、Cisco AppDynamics ダウンロードポータルから取得できます。ご使用のシステムに適したディストリビューション ファイルを取得してください。
- RedHat または CentOS では、PHP Agent - 64 bit RPM などの RPM パッケージ マネージャ ディストリビューションを使用します
- MacOS では、PHP Agent - 64 bit OSX を使用します。
Alpine Linux では、PHP Agent Alpine Linux - 64 bit を使用します
- その他すべての Linux ディストリビューションでは、PHP Agent - 64 bit Linux というディストリビューションを使用します。
- インストール時には、Controller 接続設定およびこの PHP ノードの識別情報を提供します。開始ウィザードでは手順にそってこの設定を実行できるので、Splunk AppDynamics エージェントを初めてインストールする場合は、開始ウィザードを使用することをお勧めします。コントローラ接続設定の全般情報については、「エージェントとコントローラの接続」を参照してください。
- インストゥルメンテーションを完了するには、Apache サーバーを停止して起動します。必要に応じて、サービスユーザーの中断を最低限にするような方法でインストールを実行してください。
特に実稼働環境では、他の Splunk AppDynamics 以外のアプリケーション パフォーマンス管理(APM)ツールと一緒に PHP エージェントをインストールしないでください。他のアプリケーション パフォーマンス管理(APM)製品が同じ管理対象の環境にインストールされている場合、PHP エージェントのインストールに失敗することがあります。
(Alpine Linux の場合)PHP エージェントをインストールする前に、次の手順を実行します。
libstdc++
ライブラリを追加します。apk add libstdc++
CODEsession
およびsockets
PHP 拡張機能を追加します。たとえば、PHP 8.2 を使用している場合は、
php82-session
およびphp82-sockets
拡張機能をインストールします。apk add php82-session php82-sockets
CODE
PHPエージェントのインストール
以下のトピックでは、さまざまなシナリオに対するインストールの詳細を説明しています。
- install.sh を使用する場合は、「シェルスクリプトによるPHPエージェントのインストール」を参照してください。OSX および Linux にインストールする際は install.sh を使用します。
- RPM を使用する場合は、「RPMによるPHPエージェントのインストール」を参照してください。
- PHP ZTS を使用するには、「PHP ZTS による PHP エージェントのインストール」を参照してください。
- PHP CLI をインストゥルメント化する場合は、「PHP CLIアプリケーション用エージェントの構成」も参照してください。
- MacOS でアプリケーションをインストゥルメントするには、「MacOS X Installation Considerations」を参照してください。
- 同じサーバ上で実行されている複数の PHP アプリケーションをインストゥルメント化する場合は、「単一サーバー上の複数の PHP アプリケーション」を参照してください。
cURL のインストールについては、「Cisco AppDynamics ソフトウェアのダウンロード」を参照してください。
インストールにより追加されたファイル
PHP構成ファイル
Splunk AppDynamics の場合、対象の PHP 構成ファイルは php.ini
および appdynamics_agent.ini
フラグメントです。Splunk AppDynamics 設定は、ご使用の PHP がインストールされているオペレーティングシステムに応じて、どちらかの .ini
ファイルにあります。
PHP エージェントインストーラは、php.ini
ファイルがあるディレクトリに appdynamics_agent.ini
ファイルを追加します。このディレクトリは次のコマンドを使用して検索することができます。
php -i | grep -e "Additional .ini files parsed"
インストーラが PHP 展開の ini フラグメントが存在するディレクトリを特定できない場合は、必要な Splunk AppDynamics の ini フラグメントを表示し、それをコピーしてメインの php.ini
ファイルに貼り付けるよう要求します。
配置される可能性のある場所については、http://php.net/manual/en/configuration.file.php も参照してください。
.soファイル
インストーラは、PHP 拡張ディレクトリに appdynamics_agent.so
ファイルもインストールします。このディレクトリは次のコマンドを使用して検索することができます。
php -i | grep extension_dir
ログ
各アプリケーションには、エージェントログとプロキシログがあります。
デフォルトでは、エージェントログは $<php_agent_install>/logs/agent.log
に書き込まれます。ログにはエージェントが処理してプロキシに送信するトランザクションが含まれます。エージェントログの命名におけるデフォルトのパターンは以下のとおりです。
agent.log
:現在のログagent.log.1
:最新のログagent.log.2
:2 番目に最新のログagent.log.3
:3 番目に最新のログagent.log.4
:4 番目に最新のログagent.log.5
:5 番目に最新のログ
デフォルトでは、プロキシログは $<php_agent_install>/logs/proxy_$date.log
に書き込まれます。このログには、プロキシがエージェントから受け入れてコントローラに送信するトランザクションが含まれます。
--log-dir
オプションを使用してログディレクトリを構成すると、プロキシログはエージェントログと同じディレクトリに書き込まれます。
RPM インストールで生成されるログファイルの場所については、「RPMによるPHPエージェントのインストール」の RPM ログファイルを参照してください。
PHPノードのマシンエージェントの使用
PHPエージェントを実行しているノード上に、マシンエージェントをインストールできます。ただし、PHP エージェントノードにマシンエージェントをインストールして、マシンエージェントの controller-info.xml
ファイルにティアおよびノードの名前を指定すると、PHP エージェントはコントローラを正しく登録できません。
この問題を回避するには、
- マシンエージェントをインストールする前にPHPエージェントをインストール
- インストゥルメント化された PHP ノードをホストするマシンにマシンエージェントをインストールする場合、マシンエージェントの
controller-info.xml
ファイルにアプリケーション、ティア、またはノードの名前を指定しないでください。これを行うとPHPエージェントが登録に失敗する可能性があります。