문제
다음과 같이 에이전트를 업그레이드한 후 데몬 로그 파일에 오류가 표시됩니다. protocol mismatch: A.B != X.Y
.
해결책
에이전트와 데몬이 동일한 버전 번호에서 모두 최신 상태인지 확인하십시오.
웹 서버(Apache, Nginx, PHP-FPM 등)를 다시 시작합니다.
숫자
A.B
가 숫자X.Y
보다 작으면 최신 에이전트와 통신하려는 오래된 에이전트가 있음을 의미합니다.숫자
A.B
가 숫자X.Y
보다 높으면 데몬이 오래되었음을 의미하며 가장 가능성이 높은 원인은 너무 많은 데몬을 실행하고 있기 때문입니다. 이 경우 현재 실행 중인 모든newrelic-daemon
프로세스를 종료하고/etc/init.d/newrelic-daemon start
을 사용하여 데몬을 다시 시작합니다.
원인
이 오류의 유일한 이유는 에이전트와 데몬이 서로 동기화되지 않았기 때문입니다. 데몬과 실제 에이전트(PHP 확장)는 매우 밀접하게 결합된 쌍이며 데몬은 일치하는 에이전트의 연결 및 명령만 수락합니다.
때때로 업그레이드 프로세스가 이전 데몬을 올바르게 종료하지 못하고 여전히 이전 데몬 프로세스가 실행 중일 수 있습니다. 종종 이 오류는 업그레이드 후 웹 서버를 다시 시작하지 않아 발생합니다. 데몬이 올바르게 업그레이드되었지만 웹 서버에 여전히 이전 에이전트가 포함되어 있으면 이 오류가 표시됩니다. 오류 자체는 어느 것이 오래된 것인지를 가리킵니다.