LINUX.ORG.RU
ФорумAdmin

Zabbix не работают «Поддерживаемые макросы»

 


0

1

На подкроватном сервере настроил zabbix сервер. Настроил уведомления на телеграмм. Но столкнулся с проблемой что не работают Поддерживаемые макросы.

В способах уведомлений - телеграмм в поле To используется макрос {ALERT.SENDTO} который как я понимаю берет ID комнаты/пользователя из настройки оповещений пользователя. Но этот макрос не работает. ID не подхватывается и при тестировании отправки выводится ошибка «Sending failed: Bad Request: chat not found.» Если же в способах уведомлений - телеграмм в поле To вбить ID пользователя то сообщение приходит. Но с текстом {ALERT.MESSAGE}. Тоесть как я понимаю не отрабатывает скрипт {ALERT.MESSAGE}.

В Узлы сети - test - Макросы - Макросы узла сети и унаследованные, таких макросов нет. Есть только макросы унаследованные от шаблонов которые я добавлял. Правда я не уверен должны ли они там быть

Как я понял эти скрипты идут в поставке с заббиксом и их не нужно вручную прописывать. Подскажите где можно их найти и как проверить почему они не работают?

★★★★★

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

макросы встроенные, но стоило бы уточнить какой способ отправки в телегу используется: встроеный в заббикс через webhook (начиная с 5.4) или же внешний скрипт, уже от этого отталкиваться.

только не {ALERT.SENDTO} а {ALERT.TO}

читай мануал

jo_b1ack ★★★★★
()
Последнее исправление: jo_b1ack (всего исправлений: 2)
Ответ на: комментарий от jo_b1ack

Информирование настроено через встроенный webhook.

Я так же попытался настроить уведомления через Matrix. Через webhook, импортированный из этой репы. Проблемы идентичные.

только не {ALERT.SENDTO} а {ALERT.TO}

Кажется что по умолчанию было именно {ALERT.SENDTO}. Но я не настаиваю. С {ALERT.TO} все равно не работает.

Behem0th ★★★★★
() автор топика

Через вебхук проблем нет - все работает

https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/telegram

1. Register bot: send "/newbot" to @BotFather and follow instructions
2. Copy and paste the obtained token into the "Token" field above
3. If you want to send personal notifications, you need to get chat id of the user you want to send messages to:
    3.1. Send "/getid" to "@myidbot" in Telegram messenger
    3.2. Copy returned chat id and save it in the "Telegram Webhook" media for the user
    3.3. Ask the user to send "/start" to your bot (Telegram bot won't send anything to the user without it)
4. If you want to send group notifications, you need to get group id of the group you want to send messages to:
    4.1. Add "@myidbot" to your group
    4.2. Send "/getgroupid@myidbot" in your group
    4.3. Copy returned group id save it in the "Telegram Webhook" media for the user you created for  group notifications
    4.4. Send "/start@your_bot_name_here" in your group (Telegram bot won't send anything to the group without it)
bigov
()

В Узлы сети - test - Макросы - Макросы узла сети и унаследованные, таких макросов нет. Есть только макросы унаследованные от шаблонов которые я добавлял. Правда я не уверен должны ли они там быть

Наследование макросов хостов/темплейтов к делу не имеет отношения. В доке написано, в каком контексте можно использовать {ALERT.MESSAGE} {ALERT.SENDTO}. Это просто ручка для настроек форматирования и передачи адреса в скрипт отправки, которую можно использовать только в заранее оговоренном документацией месте

https://www.zabbix.com/documentation/current/en/manual/appendix/macros/supported_by_location

Проверяй что у тебя в параметрах скрипта или веб-хука, ищи несоответствие желаемого действительному. Ну или покажи, что в веб-морде видно https://git.zabbix.com/projects/ZBX/repos/zabbix/raw/templates/media/telegram/images/2.png?at=refs%2Fheads%2Fmaster

А с {ALERT.TO} странная история, документация заббикса про него не упоминает.

melkor217 ★★★★★
()
Ответ на: комментарий от Behem0th

Тут всё выглядит правильно.

Идем дальше - там есть соседняя вкладка «Шаблоны сообщений», которая отвечает за формирование {ALERT.SUBJECT} {ALERT.MESSAGE}. Может там какая ошибка найдется.

Например, в моей конфигурации для MessageType=Problem используется такой формат:

{TRIGGER.NAME} on {HOSTNAME}
Last value: {ITEM.LASTVALUE1} ({TIME})
melkor217 ★★★★★
()
Ответ на: комментарий от melkor217

Повторю еще раз тут, вдруг я неясно выразился раньше. У меня настроено 2 способа оповещения. Через телеграмм, вебхуком идущим в комплекте с сервером заббиакса. И матрикс настроенный тоже вебхуком но импортированный отдельно. Проблема неработающих макросов наблюдается в обоих способах оповещения.

Behem0th ★★★★★
() автор топика
Ответ на: комментарий от Behem0th

Да уж, там обычное форматирование без всяких сюрпризов. Прям загадка, почему не разворачивается {ALERT.MESSAGE}

У меня в рабочей конфигурации всё то же самое, разве что вместо веб-хука используется скрипт.

melkor217 ★★★★★
()
Ответ на: комментарий от melkor217

Я тоже на работе посмотрел и там вроде все схоже. У меня даже нет идей что можно еще посмотреть.

Behem0th ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.