6. Sender
Обзор
Zabbix sender — это утилита командной строки, которая может использоваться для отправки данных производительности на сервер Zabbix для обработки.
Эта утилита обычно используется в длительно работающих пользовательских скриптах для периодической отправки данных о доступности и производительности.
Для отправки результатов напрямую на сервер Zabbix или прокси должен быть настроен элемент данных типа trapper.
См. также библиотеку Python для Zabbix, которая имеет встроенную функциональность для работы в качестве Zabbix sender.
Выполнение Zabbix sender
Пример выполнения Zabbix UNIX sender:
cd bin
./zabbix_sender -z zabbix -s "Linux DB3" -k db.connections -o 43
где:
- z — хост Zabbix сервера (также можно использовать IP адрес)
- s — техническое имя наблюдаемого узла сети (как указано в веб-интерфейсе Zabbix)
- k — ключ элемента данных
- o — отправляемое значение
Если значения опций содержат пробелы, то эти значения необходимо заключить в двойные кавычки.
Zabbix sender можно использовать для отправки нескольких значений из входного файла. Обратитесь к странице помощи Zabbix sender для получения более подробной информации.
Если указывается файл конфигурации, для отправки данных Zabbix sender использует все адреса, которые указаны в параметре ServerActive конфигурации агента. Если отправка на один адрес завершится ошибкой, sender попытается отправить на другие адреса. Если отправка партии данных на один из адресов завершается ошибкой, тогда следующие партии данных отправляться на этот адрес не будут.
Zabbix sender принимает строки в кодировке UTF-8 (как в UNIX-подобных системах, так и в Windows) без начального маркера последовательности байтов (BOM) в файле.
Zabbix sender в Windows можно выполнить аналогичным образом:
zabbix_sender.exe [опции]
В сценариях отправки данных утилитой zabbix_sender в реальном времени несколько значений, переданных ей за короткий промежуток времени, будут накапливаться и затем отправляться серверу за одно соединение. Значения, пришедшие через менее, чем 0.2 секунды с момента получения предыдущего значения, накапливаются в одном стеке, но максимальное время их накопления до отправки — всё же 1 секунда.
Zabbix sender завершится с ошибкой, если в указанном файле конфигурации имеется ошибочный (не соответствующий определению параметр=значение) параметр.
Запуск Zabbix sender с низкоуровневым обнаружением
Пример запуска Zabbix sender для отправки значения в формате JSON для низкоуровневого обнаружения:
./zabbix_sender -z 192.168.1.113 -s "Zabbix server" -k trapper.discovery.item -o '[{"{#FSNAME}":"/","{#FSTYPE}":"rootfs"},{"{#FSNAME}":"/sys","{#FSTYPE}":"sysfs"}]'
Чтобы это работало, правило низкоуровневого обнаружения должно иметь тип элемента данных Zabbix trapper (в этом примере с ключом trapper.discovery.item).