7 Внешняя проверка
Обзор
Внешняя проверка — это проверка, выполняемая сервером Zabbix путем запуска shell-скрипта или бинарного файла. Однако, если узлы сети контролируются через прокси Zabbix, внешние проверки выполняются прокси.
Внешние проверки не требуют запущенного агента на контролируемом узле сети.
Синтаксис ключа элемента данных:
script[<parameter1>,<parameter2>,...]
Где:
| ARGUMENT | DEFINITION |
|---|---|
| script | Имя shell-скрипта или бинарного файла. |
| parameter(s) | Необязательные параметры командной строки. |
Если вы не хотите передавать какие-либо параметры скрипту, можно использовать:
script[] or
script
Сервер Zabbix или прокси выполнит поиск в каталоге, указанном для внешних скриптов, и запустит команду (см. параметр ExternalScripts в файле конфигурации Zabbix server/proxy).
Команда будет выполнена от имени того же пользователя, что и сервер Zabbix/прокси, поэтому при необходимости любые права доступа или переменные окружения следует обрабатывать в обертке-скрипте.
Права доступа к команде также должны позволять этому пользователю выполнять ее.
Для выполнения доступны только команды в указанном каталоге.
Не злоупотребляйте внешними проверками, поскольку для каждого скрипта серверу Zabbix/прокси требуется запускать fork-процесс, и выполнение большого количества скриптов может значительно снизить производительность Zabbix.
Пример использования
Выполнение скрипта check_oracle.sh с первым параметром «-h». Второй параметр будет заменён IP адресом или DNS именем узла сети, в зависимости от выбранного в настройках узла сети.
check_oracle.sh["-h","{HOST.CONN}"]
Предположим, что узел сети настроен на использование IP адреса, тогда Zabbix сервер/прокси выполнит:
check_oracle.sh '-h' '192.168.1.4'
Результат внешней проверки
Возвращаемым значением внешней проверки является стандартный вывод вместе со стандартным выводом ошибок, производимые проверкой.
Элемент данных, возвращающий текст (символ, журнал или текстовый типы данных), не станет неподерживаемым в случае появления чего-либо в стандартном выводе ошибок.
Возвращаемое значение ограничено 16 МБ (включая конечные пробелы, которые усекаются); также применяются ограничения базы данных.
В случае, если выполняемый скрипт не найден или Zabbix сервер/прокси не имеет необходимых прав на его запуск, элемент данных станет неподдерживаемым и отобразится соответствующее сообщение об ошибке.
В случае превышения времени ожидания элемент данных также станет неподдерживаемым, будет отображено соответствующее сообщение об ошибке, а процесс, порождённый для этого скрипта, будет ликвидирован.