Это перевод страницы документации с английского языка. Помогите нам сделать его лучше.

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

Обзор

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

Внешние проверки не требуют на наблюдаемом узле сети какого-либо агента.

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

скрипт[<параметр1>,<параметр2>,...]

Где:

АРГУМЕНТ ОПРЕДЕЛЕНИЕ
скрипт Имя shell скрипта или бинарного файла.
параметр(ы) Опциональные параметры командной строки.

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

script[] или
       script

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

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

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

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

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

Предположим, что узел сети настроен на использование IP адреса, тогда Zabbix выполнит:

check_oracle.sh '-h' '192.168.1.4'

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

Значением результата проверки является стандартный вывод вместе со стандартным выводом ошибок (начиная с Zabbix 2.0, возвращается полный вывод с обрезанными пробелами в конце).

Текстовый (символ,​ журнал или текстовый типы данных) элемент данных не станет неподерживаемым в случае вывода стандартной ошибки.

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