4 Использование макросов в сообщениях

Обзор

Вы можете использовать макросы в теме и в тексте сообщений для более эффективного оповещения о проблемах.

В дополнение к встроенным макросам, также поддерживаются пользовательские макросы и макросы выражений. Доступен полный список макросов, поддерживаемых Zabbix.

Примеры

Приведённые здесь примеры иллюстрируют то, как вы можете использовать макросы в сообщениях.

Пример 1

Тема сообщения:

Проблема: {TRIGGER.NAME}

При получении сообщения, тема этого сообщения будет заменена на нечто подобное:

Проблема: Загрузка процессора слишком высокая на Zabbix сервере
Пример 2

Сообщение:

Загрузка процессора: {?last(/zabbix.zabbix.com/system.cpu.load[,avg1])}

При получении сообщения, само сообщение будет заменено на нечто подобное:

Загрузка процессора: 1.45
Пример 3

Сообщение:

Последнее значение: {?last(/{HOST.HOST}/{ITEM.KEY})}
       МАКС за 15 минут: {?max(/{HOST.HOST}/{ITEM.KEY},15m)}
       МИН за 15 минут: {?min(/{HOST.HOST}/{ITEM.KEY},15m)}

При получении сообщения, само сообщение будет заменено на нечто подобное:

Последнее значение: 1.45
       МАКС за 15 минут: 2.33
       МИН за 15 минут: 1.01
Пример 4

Сообщение:

http://<server_ip_or_name>/zabbix/tr_events.php?triggerid={TRIGGER.ID}&eventid={EVENT.ID}

Полученное сообщение будет содержать ссылку на страницу Детали события, которая предоставит информацию о событии, его триггере и списке последних событий, сгенерированных этим триггером.

Пример 5

Информирование о значениях с нескольких узлов сети из выражения триггера.

Сообщение:

Имя проблемы: {TRIGGER.NAME}
       Выражение триггера: {TRIGGER.EXPRESSION}
        
       1. Значение элемента данных на {HOST.NAME1}: {ITEM.VALUE1} ({ITEM.NAME1})
       2. Значение элемента данных на {HOST.NAME2}: {ITEM.VALUE2} ({ITEM.NAME2})

При получении сообщения, само сообщение будет заменено на нечто подобное:

Имя проблемы: Загрузка процессора слишком высокая на локальном хосте
       Выражение триггера: last(/Myhost/system.cpu.load[percpu,avg1])>5 or last(/Myotherhost/system.cpu.load[percpu,avg1])>5
       
       1. Значение элемента данных на Myhost: 0.83 (Загрузка процессора (усреднение за 1 мин по ядрам))
       2. Значение элемента данных на Myotherhost: 5.125 (Загрузка процессора (усреднение за 1 мин по ядрам))
Пример 6

Получение деталей по событию о проблеме и событию о восстановлении в сообщении о восстановлении:

Сообщение:

Проблема:
       
       ID события: {EVENT.ID}
       Значение события: {EVENT.VALUE} 
       Состояние события: {EVENT.STATUS} 
       Время события: {EVENT.TIME}
       Дата события: {EVENT.DATE}
       Возраст события: {EVENT.AGE}
       Подтверждение события: {EVENT.ACK.STATUS} 
       История обновления события: {EVENT.UPDATE.HISTORY}
       
       Восстановление: 
       
       ID события: {EVENT.RECOVERY.ID}
       Значение события: {EVENT.RECOVERY.VALUE} 
       Состояние события: {EVENT.RECOVERY.STATUS} 
       Время события: {EVENT.RECOVERY.TIME}
       Дата события: {EVENT.RECOVERY.DATE}
       Оперативные данные: {EVENT.OPDATA}

При получении сообщения, эти макросы будет заменены на нечто подобное:

Проблема:
       
       ID события: 21874
       Значение события: 1 
       Состояние события: PROBLEM 
       Время события: 13:04:30
       Дата события: 2018.01.02
       Возраст события: 5m
       Подтверждение события: Yes 
       История обновления события: 2018.01.02 13:05:51 "John Smith (Admin)"
       Действия: подтверждено.
       
       Восстановление: 
       
       ID события: 21896
       Значение события: 0 
       Состояние события: OK 
       Время события: 13:10:07
       Дата события: 2014.01.02
       Оперативные данные: Текущее значение - 0.83

Разделение макросов оповещений для оригинального события о проблеме и события о восстановлении поддерживается с Zabbix 2.2.0.