Расширение возможностей агентов Zabbix

В этом руководстве приведены пошаговые инструкции по расширению функциональности агента Zabbix с помощью пользовательского параметра.

Шаг 1

Напишите скрипт или команду для получения требуемого параметра.

Например, можно написать следующую команду, чтобы получить общее количество запросов, выполненных сервером MySQL:

mysqladmin -uroot status | cut -f4 -d":" | cut -f1 -d"S"

При выполнении команда возвращает общее количество SQL-запросов.

Шаг 2

Добавьте команду в файл конфигурации zabbix_agentd.conf configuration file:

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 не примет их.