11 외부 검사
원본 보기11 외부 검사
개요
외부 검사는 쉘 스크립트 실행 또는 바이너리를 통해 Zabbix 서버에서 실행되는 검사입니다. 하지만 호스트가 Zabbix 프록시에 의해 모니터링될 때는 외부 검사가 프록시에서 실행됩니다.
외부 검사는 모니터링되는 호스트에서 실행되는 에이전트가 필요하지 않습니다.
아이템 키의 구문은 다음과 같습니다:
script[<parameter1>,<parameter2>,...]
여기서:
| 인수 | 정의 |
|---|---|
| script | 쉘 스크립트 또는 바이너리의 이름. |
| parameter(s) | 선택적 명령행 매개변수. |
스크립트에 매개변수를 전달하지 않으려면 다음을 사용할 수 있습니다:
script[] or
script
Zabbix 서버나 프록시는 외부 스크립트용으로 지정된 디렉토리를 검색하고 명령을 실행합니다(Zabbix 서버/프록시 구성 파일의 ExternalScripts 매개변수 참조).
명령은 Zabbix 서버/프록시와 동일한 사용자로 실행되므로, 필요한 경우 래퍼 스크립트에서 모든 접근 권한이나 환경 변수를 처리해야 합니다.
명령의 권한도 해당 사용자가 실행할 수 있도록 허용해야 합니다.
지정된 디렉토리에 있는 명령만 실행할 수 있습니다.
각 스크립트는 Zabbix 서버/프록시가 포크 프로세스를 시작하도록 요구하므로 외부 검사를 과도하게 사용하지 마십시오. 많은 스크립트를 실행하면 Zabbix 성능이 크게 저하될 수 있습니다.
사용 예제
첫 번째 매개변수로 '-h'를 사용하여 check_oracle.sh 스크립트를 실행합니다. 두 번째 매개변수는 호스트 속성의 선택에 따라 IP 주소 또는 DNS 이름으로 대체됩니다.
check_oracle.sh["-h","{HOST.CONN}"]
호스트가 IP 주소를 사용하도록 구성되어 있다고 가정하면, Zabbix 서버/프록시가 다음을 실행합니다:
check_oracle.sh '-h' '192.168.1.4'
외부 검사 결과
외부 검사의 반환값은 검사에 의해 생성되는 표준 출력과 표준 오류를 합친 것입니다.
텍스트(문자, 로그 또는 텍스트 유형 정보)를 반환하는 아이템은 표준 오류 출력의 경우에도 지원 중단되지 않습니다.
반환값은 16MB로 제한됩니다(잘리는 후행 공백 포함). 데이터베이스 제한도 적용됩니다.
요청된 스크립트를 찾을 수 없거나 Zabbix 서버/프록시에 실행 권한이 없는 경우, 아이템은 지원 중단되고 해당 오류 메시지가 표시됩니다.
타임아웃의 경우, 아이템은 지원 중단되고 해당 오류 메시지가 표시되며 스크립트용으로 포크된 프로세스가 종료됩니다.