28 июня 2020 г.

Zabbix active check is not supported: Timeout while executing a shell script

Есть ip камера, которая не умеет SNMP и находится за NAT`ом. В сети есть виндовая машинка, которая мониторится системой заббикс, стоит задача хотя бы пинговать камеру и сообщать о ее недоступности.



Для этого в системе заббикса создаем элемент данных в нашем узле:
Ключ придумываем сами, камер у меня много, поэтому есть цифра на конце.
Группу элементов я создал отдельную.
Дальше создаем триггер:
А в конфигурационном файле добавляем строчку:
UserParameter=ping.ls_cam0,powershell.exe -NoProfile Test-Connection XXX.XXX.XXX.XXX -Count 1 -Quiet
UserParameter  - соответствует ключу
Потом команда PowerShell возвращает True или False, в команде указываем реальный ip сетевого устройства
Перезапускаем агент и смотрим историю элемента данных:

Вроде огонь, работает.
Отключаем устройство иииииииии, ничего, новых записей нету и оповещений в панели или телеграме нету.
Открываем лог на клиенте (виндовая тачка) ( за него отвечает параметр LogFile= в конфигурационном файле) и видим там вот такую ошибку:

Ваще странная ошибка. Проверяем команду Powershell - работает, вот только ответ дает через 6-7 секунд, а у заббикса тайм-аут 3 секунды. Таким образом решение - увеличить тайм-аут, за это отвечает параметр Timeout в конфигурационном файле, рекомендуют поставить 30 сек:

Комментариев нет:

Отправка комментария