Skip to content

Простой шаблон для связи WirenBoard и Zabbix, с применением LLD и макросов

License

Notifications You must be signed in to change notification settings

Kolunchik/mqtt-to-zabbix

Repository files navigation

mqtt-to-zabbix

Простой шаблон для связи WirenBoard и Zabbix, с применением LLD и макросов

Шаблон предназначен для простой и быстрой настройки мониторинга множества датчиков, подключенных к устройствам WirenBoard или любым другим, которые придерживаются подобной схемы названий топиков в mqtt.

В основном используются штатные шаблоны от WirenBoard. В папке wb-homa-modbus-templates лежат шаблоны для устройств, не имеющих штатных шаблонов - их нужно, при необходимости, положить в /usr/share/wb-homa-modbus/templates/.

*.xml файлы предназначены для импорта в Zabbix (нужна версия не ниже 4.4) В файле zbx_export_templates.xml лежит сам шаблон. В файле zbx_export_valuemaps.xml лежат настройки отображения значений (value mapping).

Скрипт mqtt-to-zabbix.py использует пакет paho.mqtt.client и хорошо работает под Python 3 на сторонних машинах, подключаясь к mqtt-брокеру (штатному, прямо на WirenBoard или любому другому, например на агрегации - в этом случае можно поменять маску подписки для топиков, ключ --mqtt-topic). Можно запускать сразу сотни копий на одной машинке.

Для отправки используется zabbix_sender. Как показала практика, это быстрее и проще, вдобавок нет проблем с шифрованием.

При запуске с ключом --help скрипт покажет небольшую справку по ключам (lld и всё такое).

Файл mqtt-to-zabbix.service - образец юнита для systemd.

Файл to_wirenboard_crontab.txt содержит примеры запуска скриптов на устройствах WirenBoard.

Настройки порогов влажности и температуры, названий и входов датчиков осуществляются через макросы в шаблоне Zabbix и в макросах хоста. В шаблоне есть примеры.

Для удобства настройки действий (actions) в триггерах прописаны тэги (см. шаблон) К примеру - для тэга "error", содержащего значение "rw" (ошибка чтения/записи при работе с датчиком, часто бывает ложной) можно создать событие, которое будет срабатывать если эта ошибка висит более 1 минуты (обычные ложные срабатывания не висят более 1-2 секунд). При этом наличие тэга позволяет исключить эти события из списка тех, которые требуют немедленной реакции.

Эта схема работает уже много лет на большой инсталляции и показала свою жизнеспособность.

About

Простой шаблон для связи WirenBoard и Zabbix, с применением LLD и макросов

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages