• EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

問題を作成する

New Relic デーモンのプロセス

PHPエージェントは2つの部分から構成されています。

  • PHP拡張モジュールは、 newrelic.so
  • エージェントデーモン、 newrelic-daemon

このデーモンは、PHP エージェントと New Relic コレクターの間のプロキシとして動作し、ネットワークトラフィックを削減し、インスツルメンテーションされたアプリケーションの応答時間を改善します。デーモンが実行されていない場合、New Relic にデータは報告されません。

PHP デーモンの初期状態またはアイドル状態

デーモンが初期状態またはアイドル状態にあるとき、 2つの トランザクションが発生しないと、レポートを開始しません。

イニシャル の状態で。

  • 最初のトランザクションで、デーモンは新たに報告されたアプリケーションを自身のアプリケーション情報テーブルに追加します。
  • アプリケーションが追加されると、デーモンは2つ目のトランザクションをNew Relicに報告します。

アイドル の状態で。

  • 最初のトランザクションでは、デーモンを起動し、New Relicへの接続を再確立します。
  • 2つ目のトランザクションは、New Relicにデータを報告します。

ウォッチドッグとワーカープロセス

プロセスリストを見ると、常に2つのデーモンプロセスが動いていることがわかります。

$ ps -ef | grep newrelic-daemon
newrelic 1368 1 0 00:28 ? 00:00:00 /usr/bin/newrelic-daemon ...
newrelic 1370 1368 0 00:28 ? 00:00:00 /usr/bin/newrelic-daemon ...

2つのプロセスが動作していることは正常な動作です。1列目はプロセスオーナー、2列目はプロセスID(PID)、3列目は親プロセスID(PPID)です。

デーモン・プロセス

コメントコメント

ウォッチドッグ(最初のプロセス)

最初のプロセス、つまりPID 1が所有するプロセスは、"ウォッチドッグ" プロセスです。このプロセスは、2番目のプロセスである"worker" プロセスを監視します。

ワーカー(第2プロセス)

ワーカープロセスは次のようなことを行います。

  • PHPエージェントからの接続を受け入れる
  • メトリクスの収集
  • New Relic コレクターとのコミュニケーション

プロセスの終了

デーモンが正常に終了されるとき (通常は/etc/init.d/newrelic-daemon stopを実行することによって)、ウォッチドッグ プロセスに終了信号が送信されます。これにより、ワーカー プロセスが正常に終了し、保留中のデータを New Relic に送信する機会が与えられます。

重要

デーモンを手動で終了させる必要がある場合は、ワーカーではなく、常にウォッチドッグを終了させてください。

ワーカープロセスが致命的なエラーに遭遇して予期せず終了した場合、ウォッチドッグプロセスは直ちに新しいワーカープロセスを再生成します。これにより、デーモンのダウンタイムを絶対的に少なくすることができます。

デーモンの停止

デーモンを殺すには、以下の方法があります。

  • 推奨されるプロセス: /etc/init.d/newrelic-daemon stopを使用します。これは、デーモンと対話するための推奨される方法です。

  • プロセスIDで直接プロセスをキルする。

    kill 1368
  • ウォッチドッグのPIDファイルを使用します。

    kill `cat /var/run/newrelic-daemon.pid`
Copyright © 2024 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.