Расширение возможностей агентов Zabbix
В этом руководстве приведены пошаговые инструкции по расширению функциональности агента Zabbix с помощью пользовательского параметра.
Шаг 1
Напишите скрипт или команду для получения требуемого параметра.
Например, можно написать следующую команду, чтобы получить общее количество запросов, выполненных сервером MySQL:
mysqladmin -uroot status | cut -f4 -d":" | cut -f1 -d"S"
При выполнении команда возвращает общее количество SQL-запросов.
Шаг 2
Добавьте команду в файл конфигурации агента Zabbix (zabbix_agentd.conf):
UserParameter=mysql.questions,mysqladmin -uroot status | cut -f4 -d":" | cut -f1 -d"S"
mysql.questions — это уникальный идентификатор. Он может быть любым допустимым идентификатором ключа, например queries.
Проверьте этот параметр с помощью агента Zabbix, используя флаг -t (однако при запуске от имени пользователя root обратите внимание, что у агента могут быть другие разрешения при запуске в качестве демона):
zabbix_agentd -t mysql.questions
Шаг 3
Перезагрузите пользовательские параметры из файла конфигурации, выполнив:
zabbix_agentd -R userparameter_reload
Вместо команды управления во время работы можно также перезапустить агент.
Проверьте параметр с помощью утилиты zabbix_get.
Шаг 4
Добавьте новый элемент данных с Key=mysql.questions к контролируемому узлу сети.
Тип элемента данных должен быть либо Zabbix Agent, либо Zabbix Agent (active).
Имейте в виду, что тип возвращаемых значений должен быть правильно задан на сервере Zabbix. В противном случае Zabbix не примет их.