2 Настройка триггера
На этой странице описано, как настроить триггер во веб-интерфейсе Zabbix.
Обратите внимание, что официальные шаблоны Zabbix содержат предопределенные триггеры.
См. руководство по применению шаблона для мониторинга Linux.
Также можно выполнить массовое обновление настроенных триггеров.
Другие ресурсы:
- Обнаружение проблем с помощью триггеров (общее введение)
- Примеры триггеров (по вариантам использования)
- Выражение триггера (подробности синтаксиса)
- Рекомендации по лучшим практикам
Конфигурация
Чтобы настроить триггер, выполните следующие действия:
- Перейдите в: Сбор данных > Узлы сети
- Нажмите Триггеры в строке узла сети
- Нажмите Создать триггер справа (или нажмите на имя триггера, чтобы изменить существующий триггер)
- Введите параметры триггера в форме
Вкладка Триггер содержит все основные атрибуты триггера.

Все обязательные поля ввода отмечены красной звездочкой.
| Parameter | Description |
|---|---|
| Name | Имя триггера. Поддерживаются макросы: {HOST.HOST}, {HOST.NAME}, {HOST.PORT}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {ITEM.VALUE}, {ITEM.VALUE.AGE}, {ITEM.VALUE.DATE}, {ITEM.VALUE.TIME}, {ITEM.VALUE.TIMESTAMP}, {ITEM.LASTVALUE}, {ITEM.LASTVALUE.AGE}, {ITEM.LASTVALUE.DATE}, {ITEM.LASTVALUE.TIME}, {ITEM.LASTVALUE.TIMESTAMP}, {ITEM.LOG.*} и пользовательские макросы {$MACRO}. Макросы $1, $2...$9 можно использовать для ссылки на первую, вторую... девятую константу выражения. Примечание: макросы $1-$9 будут корректно разрешаться, если они ссылаются на константы в относительно простых, прямолинейных выражениях. Например, имя "Processor load above $1 on {HOST.NAME}" автоматически изменится на "Processor load above 5 on New host", если выражение last(/New host/system.cpu.load[percpu,avg1])>5. |
| Event name | Если задано, это имя будет использоваться для создания имени события проблемы. По умолчанию имя события совпадает с именем триггера. Имя события можно использовать для формирования информативных оповещений, содержащих данные о проблеме (см. пример). Поддерживается тот же набор макросов, что и для имени триггера, а также макросы выражения {TIME}, {TIMESTAMP} и {?EXPRESSION}. |
| Operational data | Введите строку с макросами для отображения динамических данных в реальном времени в Мониторинг > Проблемы. Либо оставьте это поле пустым, чтобы отображались последние значения всех элементов данных из выражения триггера. Поддерживается тот же набор макросов, что и для имени триггера, с возможностью динамического разрешения. Например: {ITEM.VALUE<1-9>} разрешается в значения элементов данных в момент изменения состояния триггера (создание проблемы, восстановление, ручное закрытие или закрытие по корреляции). {ITEM.LASTVALUE<1-9>} разрешается в последние значения элементов данных. Обратите внимание, что при ручном закрытии проблемы новое значение не создается, поэтому оба макроса по-прежнему будут показывать значение на момент возникновения проблемы. Также обратите внимание, что оба макроса разрешаются в UNKNOWN, если последнее значение старше Максимального периода отображения истории (см. Администрирование > Общие). |
| Severity | Установите требуемую серьезность триггера, нажимая кнопки. |
| Expression | Логическое выражение, используемое для определения условий возникновения проблемы. Поддерживаются суффиксы времени и суффиксы размера памяти. Проблема создается после выполнения всех условий, включенных в выражение, то есть когда выражение вычисляется как TRUE. Проблема будет восстановлена, как только выражение станет FALSE, если только дополнительные условия восстановления не указаны в Recovery expression. |
| OK event generation | Параметры генерации событий OK: Expression - события OK генерируются на основе того же выражения, что и события проблемы; Recovery expression - события OK генерируются, если выражение проблемы вычисляется как FALSE, а выражение восстановления - как TRUE; None - в этом случае триггер никогда не вернется в состояние OK самостоятельно. |
| Recovery expression | Логическое выражение (необязательно), определяющее дополнительные условия, которые должны быть выполнены перед восстановлением проблемы, после того как исходное выражение проблемы уже было вычислено как FALSE. Выражение восстановления полезно для гистерезиса триггера. Невозможно восстановить проблему только по выражению восстановления, если выражение проблемы по-прежнему TRUE. Это поле доступно только если для OK event generation выбрано 'Recovery expression'. |
| PROBLEM event generation mode | Режим генерации событий проблемы: Single - одно событие генерируется, когда триггер впервые переходит в состояние 'Problem'; Multiple - событие генерируется при каждом вычислении триггера в состоянии 'Problem'. |
| OK event closes | Выберите, закрывает ли событие OK: All problems - все проблемы этого триггера; All problems if tag values match - только те проблемы триггера, у которых совпадают значения тегов события. |
| Tag for matching | Введите имя тега события, которое будет использоваться для корреляции событий. Это поле отображается, если для свойства OK event closes выбрано 'All problems if tag values match', и в этом случае является обязательным. |
| Allow manual close | Установите флажок, чтобы разрешить ручное закрытие событий проблемы, создаваемых этим триггером. Ручное закрытие возможно при подтверждении событий проблемы. |
| Menu entry name | Если поле не пустое, введенное здесь имя (до 64 символов) используется в нескольких местах веб-интерфейса как подпись для URL триггера, указанного в параметре Menu entry URL. Если поле пустое, используется имя по умолчанию Trigger URL. Поддерживается тот же набор макросов, что и для имени триггера, а также {EVENT.ID}, {HOST.ID} и {TRIGGER.ID}. |
| Menu entry URL | Если поле не пустое, введенный здесь URL (до 2048 символов) доступен как ссылка в меню события в нескольких местах веб-интерфейса, например при нажатии на имя проблемы в виджете Мониторинг > Проблемы или на панели Проблемы. Поддерживается тот же набор макросов, что и для имени триггера, а также {EVENT.ID}, {HOST.ID} и {TRIGGER.ID}. Примечание: пользовательские макросы со секретными значениями не будут разрешены в URL. |
| Description | Текстовое поле, используемое для предоставления дополнительной информации об этом триггере. Может содержать инструкции по устранению конкретной проблемы, контактные данные ответственных сотрудников и т. д. Поддерживается тот же набор макросов, что и для имени триггера. |
| Enabled | Снятие этого флажка при необходимости отключит триггер. Проблемы отключенного триггера больше не отображаются в веб-интерфейсе, но не удаляются. |
Вкладка Теги позволяет определить теги уровня триггера. Все проблемы этого триггера будут помечены значениями, введенными здесь.

Кроме того, параметр Унаследованные и теги триггера позволяет просматривать теги, определенные на уровне шаблона, если триггер получен из этого шаблона. Если существует несколько шаблонов с одним и тем же тегом, эти теги отображаются один раз, а имена шаблонов разделяются запятыми. Триггер не "наследует" и не отображает теги уровня узла сети.
| Parameter | Description |
|---|---|
| Name/Value | Задайте пользовательские теги для пометки событий триггера. Теги представляют собой пару имени тега и значения. Можно использовать только имя или имя вместе со значением. Триггер может иметь несколько тегов с одинаковым именем, но разными значениями. В тегах событий поддерживаются пользовательские макросы, пользовательские макросы с контекстом, макросы низкоуровневого обнаружения и макросы functions с {{ITEM.VALUE}}, {{ITEM.LASTVALUE}}.Макросы низкоуровневого обнаружения можно использовать внутри контекста макроса. Макрос {TRIGGER.ID} поддерживается в значениях тегов триггера. Это может быть полезно для идентификации триггеров, созданных из прототипов триггеров, и, например, для подавления проблем от этих триггеров во время обслуживания. Если общая длина развернутого значения превышает 255, она будет обрезана до 255 символов. См. все макросы, поддерживаемые для тегов событий. Теги событий можно использовать для корреляции событий, в условиях действий, а также они будут видны в Мониторинг > Проблемы или в виджете Проблемы. |
Вкладка Зависимости содержит все зависимости триггера.
Нажмите Добавить, чтобы добавить новую зависимость.
Вы также можете настроить триггер, открыв существующий, нажав кнопку Клонировать и затем сохранив его под другим именем.
Тестирование выражения триггера
Можно проверить, каким будет результат выражения в зависимости от полученного значения.
В качестве примера взято следующее выражение из официального шаблона:
avg(/Cisco IOS SNMPv2/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN}
or
last(/Cisco IOS SNMPv2/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS}
Чтобы протестировать выражение, нажмите Конструктор выражения под полем выражения.

В Конструкторе выражения перечислены все отдельные выражения. Чтобы открыть окно тестирования, нажмите Тест под списком выражений.

В окне тестирования можно ввести примерные значения ('80', '70', '0', '1' в этом примере), а затем посмотреть результат выражения, нажав кнопку Тест.

Можно увидеть результат как отдельных выражений, так и всего выражения.
"TRUE" означает, что указанное выражение верно. В данном случае A значение "80" больше, чем указанное значение {$TEMP_WARN}, в этом примере — "70". Как и ожидалось, отображается результат "TRUE".
"FALSE" означает, что указанное выражение неверно. В данном случае B значение {$TEMP_WARN_STATUS} "1" должно быть равно указанному значению, в этом примере — "0". Как и ожидалось, отображается результат "FALSE".
Выбранный тип выражения — "OR". Если хотя бы одно из указанных условий (в данном случае A или B) имеет значение TRUE, итоговый результат также будет TRUE. Это означает, что текущее значение превышает предупреждающее значение и возникла проблема.