• ログイン今すぐ開始

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

プロトコル不一致エラー

問題

エージェントをアップグレードすると、デーモンのログファイルに次のようなエラーが表示されます。protocol mismatch:A.B != X.Y.

解決策

  1. エージェントとデーモンのバージョンが同じであることを確認してください。

  2. ウェブサーバーを再起動します(Apache、Nginx、PHP-FPMなど)。

  3. A.B の数が X.Y の数よりも少ない場合は、古いエージェントが最新のデーモンと通信しようとしていることを意味します。

    A.B の数字が X.Y の数字よりも大きい場合は、デーモンが古くなっていることを意味し、最も可能性の高い原因は、デーモンの実行数が多すぎることです。この場合、現在実行中の newrelic-daemon プロセスをすべて kill し、 /etc/init.d/newrelic-daemon start でデーモンを再起動してください。

原因

このエラーが発生する唯一の理由は、エージェントとデーモンがお互いに同期していないことです。デーモンと実際のエージェント (PHP 拡張モジュール) は非常に緊密に結合しており、 デーモンはそれにマッチしたエージェントからの接続やコマンドしか受け付けません。

アップグレードの際に、古いデーモンを正しく殺すことができず、古いデーモンのプロセスがまだ動いていることがあります。よくあるのは、アップグレード後にWebサーバーを再起動しなかったことがこのエラーの原因です。デーモンが正しくアップグレードされたにもかかわらず、ウェブサーバーに古いエージェントが残っていると、このエラーが表示されます。このエラー自体が、どのエージェントが古くなったかを示しています。

Copyright © 2022 New Relic Inc.

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