PHP モニターの構成

エージェントがモニター対象の PHP アプリケーションからデータを収集できるように、Monitoring Agent for PHP を構成する必要があります。

始める前に

  1. php-process パッケージを必ずインストールしてください。yum install コマンドを使用して PHP をインストールする場合は、yum install php-process コマンドを実行して php-process パッケージをインストールします。
  2. エージェントを構成する前に、必ず Apache HTTPD サーバーを始動してください。
    Apache HTTP サーバーの httpd.conf 構成ファイルを開き、mod_statusExtendedStatus On の両方のオプションが有効になっていることを確認してください。例:
    ExtendedStatus On
    <Location /server-status>
    		SetHandler server-status
    		Order deny,allow
    		Allow from all
    		Allow from 127.0.0.1
    </Location>
    この例では、エージェントが正しく動作するために http://127.0.0.1/server-status が正常に動作する必要があります。
    注: エージェントがモニター・データを取得するためには、Lynx または Links が Linux にインストールされていなければなりません。

    apachectl コマンドにコード変更を加えていないモニター対象の Apache サーバーで、コマンド apachectl status が正しく動作することを確認します。コマンド apachectl status が正しく動作するためには、Lynx がインストールされていなければなりません。

このタスクについて

エージェントの構成時に権限の問題が発生しないようにするために、必ず、エージェントのインストールに使用したのと同じ root ユーザー ID または非 root ユーザー ID を使用してください。選択されたユーザーとしてエージェントをインストールした後で、別のユーザーとしてエージェントを構成する場合は、非 root ユーザーとしてのエージェントの構成を参照してください。選択されたユーザーとしてエージェントをインストールおよび構成した後で、別のユーザーとしてエージェントを開始する場合は、非 root ユーザーとしてのエージェントの開始を参照してください。

PHP エージェントは複数インスタンス・エージェントです。最初のインスタンスを作成し、エージェントを手動で開始する必要があります。管理対象システム名には、指定するインスタンス名が含まれます (例: instance_name:host_name:pc)。ここで pc は、ご使用の製品の 2 文字の製品コードです。管理対象システム名は 32 文字に制限されています。指定するインスタンス名は 28 文字 (ホスト名の字数は除く) までに制限されています。例えば、インスタンス名に PHP2 を指定すると、管理対象システム名は PHP2:hostname:PJ になります。
重要: 長いインスタンス名を指定した場合、管理対象システム名は切り捨てられ、エージェント・コードが正しく表示されません。

手順

  • ご使用の環境がデフォルト設定と同じ場合、デフォルトの実行バイナリー・パス、デフォルトの php.ini ファイル・パス、およびデフォルト・ポートを使用してエージェントを構成できます。
    1. 以下を入力します。
      install_dir/bin/php-agent.sh config instance_name install_dir/samples/php_silent_config.txt
      ここで、instance_name はインスタンスに指定する名前であり、install_dirPHP エージェントのインストール・ディレクトリーです。デフォルトのインストール・ディレクトリーは、/opt/ibm/apm/agent です。
    2. エージェントを開始するには、以下を入力します。
      install_dir/bin/php-agent.sh start instance_name
  • サイレント応答ファイルを編集し、対話操作なしでスクリプトを実行することでエージェントを構成するには、以下の手順を実行します。
    1. テキスト・エディターで install_dir/samples/php_silent_config.txt を開きます。
    2. Location of PHP execution binary には、PHP 実行ファイルが格納されているディレクトリーを指定できます。デフォルトの場所は、/usr/local/bin です。
    3. Location of PHP INI file には、php.ini ファイルが格納されているディレクトリーを指定できます。 デフォルトの場所は、/etc です。
    4. Web server port には、WordPress を実行している Web サーバーのポート番号を指定できます。デフォルトは 80 です。
    5. Application DocumentRoot には、PHP WordPress アプリケーションのドキュメント・ルートを指定できます。複数のレコードを区切るにはコロンを使用します。エージェントですべてのレコードを自動的に検索するには、デフォルト値の ALL を使用します。
    6. php_silent_config.txt フィルを保存して閉じてから、以下を入力します。
      install_dir/bin/php-agent.sh config instance_name install_dir/samples/php_silent_config.txt
      ここで、instance_name はインスタンスに指定する名前であり、install_dirPHP エージェントのインストール・ディレクトリーです。デフォルトのインストール・ディレクトリーは、/opt/ibm/apm/agent です。
    7. エージェントを開始するには、以下を入力します。
      install_dir/bin/php-agent.sh start instance_name
  • スクリプトを実行し、プロンプトに応答を入力してエージェントを構成する場合は、以下の手順を実行します。
    1. 以下を入力します。
      install_dir/bin/php-agent.sh config instance_name
      ここで、instance_name はインスタンスに指定する名前であり、install_dirPHP エージェントのインストール・ディレクトリーです。
    2. Edit Monitoring Agent for PHP settings というプロンプトが出されたら、1 を入力して続行します。
    3. Location of PHP execution binary というプロンプトが出されたら、Enter キーを押してデフォルトの場所を受け入れるか、独自の場所を指定します。
    4. Location of PHP INI file というプロンプトが出されたら、Enter キーを押してデフォルトの場所を受け入れるか、独自の場所を指定します。
    5. Web server port というプロンプトが出されたら、Enter キーを押してデフォルトのポートを受け入れるか、別のポート番号を指定します。
    6. Application DocumentRoot というプロンプトが出されたら、Enter キーを押してデフォルトを受け入れるか、PHP WordPress アプリケーションのドキュメント・ルートを指定します。コロンを使用して複数のレコードを区切ることができます。
    7. エージェントを開始するには、以下を入力します。
      install_dir/bin/php-agent.sh start instance_name

タスクの結果

エージェントは、WordPress アプリケーションでの PHP 要求のパフォーマンスのみを評価します。CSS および JS のロードは評価されません。エージェントは、URL を識別するために URL 引数を使用しません。

次のタスク

PHP エージェントのデータが Cloud APM コンソール に表示されることを確認できます。

エージェント用の WordPress プラグインがアクティブ化されていることを確認する必要があります。 確実にアクティブ化するには、以下のステップを実行します。
  1. Web ブラウザーで、URL http://hostname:port/wp-admin/ を入力します。
  2. 「プラグイン」 > 「インストール済みプラグイン (Installed Plugins)」にナビゲートして、管理ページにアクセスします。
  3. PHP エージェント プラグインがアクティブ化されていることを確認します。PHP エージェントのプラグインが「WordPress エージェント」としてリストされています。通常、プラグインは既にアクティブ化されています。まだアクティブ化されていない場合は、「アクティブ化 (Activate)」をクリックします。