LINUX.ORG.RU
решено ФорумAdmin

Получение данных из внешних скриптов в zabbix

 


0

2

Доброго времени суток

В zabbix потребовалось мониторить сложный комплекс ПО, с множеством параметров. Получение параметров - через API. Но, к сожалению, само ПО отвечает на API запросы неспешно. И не всегда выполнение укладывается в максимально возможные для zabbix external check 30 сек.

Собираюсь сделать так:

  • по cron запускается скрипт, который запрашивает всё что можно раз в 5 мин ( по времени укладываюсь, проверил ) и складывает данные в файл ( доступ через shared и exclusive блокировки, тут нет проблем ) вместе со временем последней проверки
  • zabbix в качестве «external» дёргает скрипт, который уже в зависимости от парамерта выдаёт значение для одного item'а ( или для одного discover'y ). Но данные будут возвращены, только если они актуальны. Т.е. если скрипт сбора умер и не шевелится, то скрипт для zabbix перестанет возвращать в zabbix старые данные.
  • одна отдельная пара item+trigger будут следить, когда скрипт сбора данных запускался последний раз.

В связи с этим вопросы:

  1. Как сообщить zabbix'у, что даные для item «not available», а не сам item «not supported» ? Если данных нет - пусть на графиках будет провал. Но блокировать item на час категорически недопустимо.
  2. А есть ли способ полностью слать данные снаружи zabbix? Т.е. в zabbix только определить item, но ничего не предпринимать для их получения - внешний скрипт сам их пришлёт когда будет нужно?
★★★★★

Добрый вечер, ответы на ваши вопросы:
1. Это можно сделать через magic-numbers, то есть, если нет данных, отдавать значение -1. Кстати, период задержки для итемов типа «not supported» можно установить любой. Это делается в меню настроек в веб-интерфейсе.
2. Да, в zabbix можно самостоятельно грузить данные извне, прочтите про zabbix trappers.

dmitryalexeeff
()
Последнее исправление: dmitryalexeeff (всего исправлений: 4)

А есть ли способ полностью слать данные снаружи zabbix? Т.е. в zabbix только определить item, но ничего не предпринимать для их получения - внешний скрипт сам их пришлёт когда будет нужно?

zabbix_send на клиенте[br/] zabbix_trap на сервере

petav ★★★★★
()
26 июня 2013 г.

~ 300 item'ов, которые нужно получать раз в 20 сек, хоронят возможность использования external scripts, как бы быстро ни работал внешний скрипт.

Зато с zabbix trappers всё хорошо, та же пачка из 300 item'ов пролетает не нагружая zabbix.

router ★★★★★
() автор топика
Последнее исправление: router (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.