Нашел классную статейку, перепечатываю себе на всякий случай
Перейдём к краеугольной теме Zabbix — теме использования пользовательских параметров UserParameter. С помощью UserParameter можно выполнить произвольную команду на машине с Zabbix агентом, а результат выполнения этой команды передать на Zabbix сервер для мониторинга. Рассмотрим простейший пример работы со своими параметрами.
На машине с агентом открыть конфигурационный файл zabbix_agentd.win.conf
, в конец файла дописать:UserParameter=diskstatus, wmic diskdrive get status
здесь:diskstatus
– имя нашего параметраwmic diskdrive get status
– команда, позволяющая узнать статус диска из SMART. Кстати, вместо команды можно указать путь к заранее подготовленному скрипту.
Можно также проверить, в каком виде данная команда возвращает результат выполнения, выполнив её в консоли:
C:\Users\user>wmic diskdrive get status
Status
OK
Сохраняем конфиг файл zabbix_agentd.win.conf
и перезапускаем Zabbix агент:c:\zabbix>zabbix_agentd.exe --stop
c:\zabbix>zabbix_agentd.exe --start
Далее можно переходить к добавлению параметра на сервере Zabbix. Но перед этим предлагаю убедиться, что обращение к параметру происходит корректно. Это необязательно на данном шаге, но поможет диагностировать проблемы с параметрами в будущем.
Подключаемся к серверу по ssh (по умолчанию для виртуальной машины Zabbix логин — appliance, пароль — zabbix) и выполняем команду:appliance@zabbix:~$ zabbix_get -s 192.168.11.51 -k "diskstatus"
здесь:-s
– это адрес хоста-k
– ключ (имя UserParameter)
Результат выполнения будет аналогичным, что и при выполнении команды в консоли Windows:Status
OK
На этом шаге мы убедились, что параметр задан верно и агент отдаёт результат выполнения серверу. Теперь можно продолжить настройку сервера Zabbix в браузере.
Переходим в раздел Items:
Нажимаем Create Item и заполняем поля:
здесь:Name
– произвольное имяKey
– точно такое же название UserParameter, что и в конфиге на агентеType of information
– то, как распарсит Zabbix ответ от агента; указываем текст, так как его отдаёт наш параметр.
Добавляем Item. Если ошибок нет, то мы увидим наш Item в состоянии Enable:
Возможно, в состояние Enable он перейдет через 30 секунд после создания – это интервал опроса агента по умолчанию.
Напоследок убедимся, что агент отдаёт результат выполнения команды:
Далее пишем тригер