Существует тип макроса, который используется в функции низкоуровневого обнаружения (LLD):
Это такой макрос, который используется в правиле LLD и возвращает реальные значения имен файловых систем, сетевых интерфейсов и SNMP OID-ов.
Эти макросы можно использовать для создания прототипов элементов данных, триггеров и графиков. Затем, когда обнаруживаются реальные файловые системы, сетевые интерфейсы и т.п., такие макросы заменяются реальными значениями и становятся основой для создания реальных элементов данных, триггеров и графиков.
Также эти макросы можно использовать для создания прототипов узлов сети и групп узлов сети в обнаружении виртуальных машин.
Некоторые макросы низкоуровневого обнаружения "заранее добавлены" в функционал низкоуровневого обнаружения в Zabbix - {#FSNAME}, {#FSTYPE}, {#IFNAME}, {#SNMPINDEX}, {#SNMPVALUE}. Однако, не обязательно придерживаться этих имен при создании пользовательского низкоуровневого правила обнаружения. В этом случае вы можете использовать любое другое LLD имя макроса и ссылаться по этому имени.
LLD макросы можно использовать:
Во всех перечисленных местах можно использовать LLD макросы в контекстах пользовательских макросов.
Функции макросов поддерживаются с макросами низкоуровневого обнаружения (за исключением фильтра правила низкоуровневого обнаружения), которые позволяют извлекать некоторую часть значения макроса используя регулярное выражение.
Например, вы можете захотеть извлечь имя клиента и номер интерфейса из следующего макроса LLD для назначения тегов событий:
Чтобы это сделать, можно использовать функцию макроса regsub
с макросом в поле значения тега событий прототипа триггеров:
Для получения более подробных сведений о синтаксисе функций макросов смотрите: Функции макросов
Функции макросов в макросах низкоуровневого обнаружения поддерживаются начиная с Zabbix 4.0.
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.