11 Внешние проверки

Обзор

Внешняя проверка — это проверка, выполняемая сервером Zabbix путем запуска shell-скрипта или бинарного файла. Однако, если узлы сети мониторятся прокси Zabbix, внешние проверки выполняются прокси.

Для внешних проверок не требуется запущенный на мониторируемом узле сети агент.

Синтаксис ключа элемента данных:

script[<parameter1>,<parameter2>,...]

Где:

ARGUMENT DEFINITION
script Имя shell-скрипта или бинарного файла.
parameter(s) Необязательные параметры командной строки.

Если вы не хотите передавать скрипту какие-либо параметры, можно использовать:

script[] or
script

Сервер Zabbix или прокси будет искать указанный каталог для внешних скриптов и выполнять команду (см. параметр ExternalScripts в файле конфигурации Zabbix server/proxy). Команда будет выполняться от имени того же пользователя, что и сервер Zabbix/прокси, поэтому при необходимости любые права доступа или переменные окружения следует обрабатывать в оберточном скрипте. Права доступа к команде также должны позволять этому пользователю выполнять ее. Для выполнения доступны только команды из указанного каталога.

Не злоупотребляйте внешними проверками, так как каждый скрипт требует запуска fork-процесса сервером Zabbix/прокси, а выполнение большого количества скриптов может значительно снизить производительность Zabbix.

Пример использования

Выполнение скрипта check_oracle.sh с первым параметром '-h'. Второй параметр будет заменен на IP-адрес или DNS-имя в зависимости от выбора в свойствах узла сети.

check_oracle.sh["-h","{HOST.CONN}"]

Предполагая, что узел сети настроен на использование IP-адреса, сервер/прокси Zabbix выполнит:

check_oracle.sh '-h' '192.168.1.4'

Результат внешней проверки

Возвращаемое значение внешней проверки — это стандартный вывод вместе со стандартным выводом ошибок, сформированными проверкой.

Элемент данных, который возвращает текст (символьный, журнал или тип информации text), не станет неподдерживаемым в случае вывода в стандартный поток ошибок.

Возвращаемое значение ограничено 16 МБ (включая завершающие пробельные символы, которые усекаются); также применяются ограничения базы данных.

Если запрошенный скрипт не найден или сервер/прокси Zabbix не имеет прав на его выполнение, элемент данных станет неподдерживаемым, и будет отображено соответствующее сообщение об ошибке.

В случае тайм-аута элемент данных станет неподдерживаемым, будет отображено соответствующее сообщение об ошибке, а процесс, созданный для скрипта, будет завершён.