4 Макросы низкоуровневых обнаружений
Обзор
Существует тип макроса, который используется в функции низкоуровневого обнаружения (LLD):
{#МАКРОС}
Это такой макрос, который используется в правиле LLD и возвращает реальные значения имен файловых систем, сетевых интерфейсов и SNMP OID-ов.
Эти макросы можно использовать для создания прототипов элементов данных, триггеров и графиков. Затем, когда обнаруживаются реальные файловые системы, сетевые интерфейсы и т.п., такие макросы заменяются реальными значениями и становятся основой для создания реальных элементов данных, триггеров и графиков.
Также эти макросы можно использовать для создания прототипов узлов сети и групп узлов сети в обнаружении виртуальных машин.
Некоторые макросы низкоуровневого обнаружения "заранее добавлены" в функционал низкоуровневого обнаружения в Zabbix - {#FSNAME}, {#FSTYPE}, {#IFNAME}, {#SNMPINDEX}, {#SNMPVALUE}. Однако, не обязательно придерживаться этих имен при создании пользовательского низкоуровневого правила обнаружения. В этом случае вы можете использовать любое другое LLD имя макроса и ссылаться по этому имени.
Поддерживаемые места
LLD макросы можно использовать:
- в фильтре правила низкоуровневого обнаружения
- в прототипах элементов данных в
- именах
- параметрах ключей
- единицах измерения
- интервалах обновления
- периодах хранения истории
- периодах хранения динамики изменений
- SNMP OID'ах
- полях IPMI датчиков
- формулах вычисляемых элементов данных
- SSH и Telnet скриптах
- SQL запросах монитора баз данных
- полях endpoint JMX элементов данных
- описаниях
- также в начиная с Zabbix 4.0:
- шагах предобработки значений элементов данных
- поле URL HTTP агента
- поле HTTP поля запроса HTTP агента
- поле запроса тела HTTP агента
- поле требуемых кодов состояний HTTP агента
- полях ключей и значений заголовков HTTP агента
- поле имени пользователя аутентификации HTTP агента
- поле пароля аутентификации HTTP агента
- поле HTTP прокси HTTP агента
- поле файла SSL сертификата HTTP агента
- поле файла SSL ключа HTTP агента
- поле пароля к SSL ключу HTTP агента
- поле HTTP времени ожидания HTTP агента
- в прототипах триггеров в
- именах
- выражениях (только в константах и параметрах функций)
- URL'ах
- описаниях
- именах тегов событий и значениях (за исключением параметров функций макросов)
- в прототипах графиков в
- именах
- в прототипах узлов сети в
- именах
- видимых именах
- именах прототипов групп узлов сети
- (смотри полный список)
Во всех перечисленных местах можно использовать LLD макросы в контекстах пользовательских макросов.
Использование функций макросов
Функции макросов поддерживаются с макросами низкоуровневого обнаружения (за исключением фильтра правила низкоуровневого обнаружения), которые позволяют извлекать некоторую часть значения макроса используя регулярное выражение.
Например, вы можете захотеть извлечь имя клиента и номер интерфейса из следующего макроса LLD для назначения тегов событий:
{#IFALIAS}=имяклиента_1
Чтобы это сделать, можно использовать функцию макроса regsub с
макросом в поле значения тега событий прототипа триггеров:

Для получения более подробных сведений о синтаксисе функций макросов смотрите: Функции макросов
Функции макросов в макросах низкоуровневого обнаружения поддерживаются начиная с Zabbix 4.0.
Footnotes
1 In the fields marked with 1 a single macro has to fill the whole field. Multiple macros in a field or macros mixed with text are not supported.