PHPデーモンの起動(高度)

PHPエージェントの標準インストレーションでは、別の指示がない限り、デーモンが動作していないことを検出すると、自動的にデーモンを起動します。ライセンスキーは、PHP INIファイルでエージェントに対して設定されており、ディレクトリや仮想ホストごとに変更することができます。デーモンもまたエージェント設定 (INI) ファイルで設定されています。

newrelic-daemon (エージェントモード) を自動起動する

外部起動モードを使用する具体的な理由がない限りは、この自動設定プロセスを使用してください。設定が単一ファイルで行われ、デーモンを起動する必要がないこのプロセスは、ほとんどのユーザーにとって最も簡単でエラーが発生しにくいものとなっています。

このモードは、INIファイル内の設定を使用してデーモンを設定します。また、エージェントによってデーモンがまだ動作していないことが検出された場合は、デーモンを自動的に起動します。これは「エージェントモード」と呼ばれることがあります。

自動起動モードでは:

  • デーモンの設定とその他すべてのグローバル設定は、グローバルPHP iniファイルに含まれています。
  • エージェントは起動するたび (Apache/PHP-FPMが再起動するたび、またはコマンドラインでエージェントを起動するとき) に自動的にデーモンを起動します。
  • デーモンログファイル内の書き込みアクセス権は、デーモンを起動できるユーザーを制御します。
  • php-agent.logファイル内の起動ヘッダーには、自動起動モードを示す「エージェント」が含まれています。

エージェント起動モードを使用するには:

  1. /etc/init.d/newrelic-daemon stopを実行して、デーモンが動作していないことを確認します。
  2. /etc/newrelic/newrelic.cfgが存在しないことを確認します。存在する場合は、別の場所に移動するか、削除してください。
  3. INIファイルを編集し、デーモンに関連するオプションを設定します。またこれらのオプションは、/usr/lib/newrelic-php5/scripts/newrelic.ini.templateにあるINIテンプレートファイルにも文書化されています。
  4. WebサーバーまたはPHPプロセスマネージャーを再起動して、新しい設定を取得します。

手動 (外部) モードを選択する

手動モードの場合、エージェントを起動するには、デーモンとWebサーバーを起動する必要があります。これは「外部」モードとも呼ばれます。自動起動モードではなく手動モードの使用が適切である理由には、以下のような例が挙げられます。

  • 顧客がそれぞれ独自のWebサービスを管理するマルチテナントサイトを運営している。すべてのテナントがそれぞれ独自のデーモンのプライベートコピーを実行している状況を避けたいため、システムブート時に起動し、すべてのテナント間で共有されるものを提供してシステムリソースをより有効に活用する。各顧客がINIファイル内にそれぞれ独自のプライベートライセンスキーを提供できる (または、あなたが仮想ホスト単位でライセンスキーを提供する)。
  • Webサーバーのアップタイムへの影響なく、デーモンをシャットダウンする機能を維持したい。このモードでは、デーモンをシャットダウンする必要がある場合、システムをリブートするか、明示的に再起動するまで、デーモンはシャットダウンしたままになります。
  • ルートまたはスペシャルユーザー以外の誰にもログファイルを表示する必要がないように、デーモンをルート (または適切な権限のある別のユーザー) として実行したい。デーモンログファイルには、(たとえ機密性が低いものだとしても) 潜在的な機密データを含まれています。
  • 従来のinitスクリプトで起動するサービスデーモンに使い慣れている。

newrelic-daemonを手動で起動する (外部モード)

手動 (または外部) 起動モードでは:

  • デーモンの設定は、newrelic.cfgに含まれています。
  • デーモンは、システムブート時、またはその起動スクリプトの実行時に起動します。
  • ログファイルと設定ファイルのアクセス権は、デーモンを起動・停止できるユーザーを制御します。
  • php-agent.logファイル内の起動ヘッダーには、手動起動モードを示すinitファイルが含まれています。

デーモンの設定ファイルが/etc/newrelic/newrelic.cfgにある場合、エージェントはデーモンを自動的に起動しようとしません。このファイルを移動したが、この起動方法をまだ使用したい場合は、次をグローバルINIファイルに追加してください:newrelic.daemon.dont_launch = 3

この外部起動方法を使用したい場合は:

  1. 次に移動します:
     cp /etc/newrelic/newrelic.cfg.template /etc/newrelic/newrelic.cfg
  2. /etc/newrelic/newrelic.cfgを編集し、必須の値を変更します。
  3. /etc/init.d/newrelic-daemon restartを実行します。
  4. 新しい設定を取得するには、WebサーバーまたはPHPプロセスマネージャーを再起動します。

その他のヘルプ

推奨する詳細情報: