Existe un tipo de macro utilizada dentro de la función de descubrimiento de bajo nivel (LLD):
Es una macro que se utiliza en una regla LLD y devuelve valores reales del nombre del sistema de archivos, interfaz de red, OID SNMP, etc.
Estas macros pueden utilizarse para crear prototipos de métricas, disparadores y gráficos. Luego, al descubrir sistemas de archivos reales, interfaces de red, etc., estas macros se sustituyen por valores reales y son la base para crear métricas, disparadores y gráficos reales.
Estas macros también se utilizan para crear prototipos de equipos y grupos de equipos en el descubrimiento de máquinas virtuales.
Algunas macros de descubrimiento de bajo nivel vienen "predefinidas" con la función LLD en Zabbix: {#FSNAME}, {#FSTYPE}, {#IFNAME}, {#SNMPINDEX}, {#SNMPVALUE}. Sin embargo, no es obligatorio ceñirse a estos nombres al crear una regla de descubrimiento de bajo nivel personalizada. En ese caso, puede utilizar cualquier otro nombre de macro LLD y hacer referencia a ese nombre.
Al definir reglas de descubrimiento personalizadas, los valores de las propiedades devueltos en objetos JSON para macros LLD deben ser uno de los siguientes tipos primitivos:
No se admiten matrices, objetos ni valores nulos. Cualquier macro LLD que haga referencia a dicho valor permanecerá sin expandir y aparecerá literalmente (por ejemplo, '{#MY_MACRO}'
) durante el preprocesamiento y la creación de la métrica.
Las macros LLD pueden usarse:
En todos estos lugares, excepto en el filtro de la regla de descubrimiento de bajo nivel, las macros LLD pueden usarse dentro del contexto de macro de usuario estático.
Las funciones de macro son compatibles con las macros de bajo nivel de descubrimiento (excepto en la filtro de la regla de bajo nivel de descubrimiento), lo que permite extraer una determinada parte del valor de la macro utilizando una expresión regular.
Por ejemplo, puede que desee extraer el nombre del cliente y el número de interfaz de la siguiente macro LLD para fines de etiquetado de eventos:
Para ello, la función de macro regsub
puede utilizarse con la macro en el campo de valor de la etiqueta de evento de un prototipo de disparador:
Tenga en cuenta que no se permiten comas en los parámetros de clave de la métrica sin comillas, por lo que el parámetro que contiene una función de macro debe ir entre comillas. El carácter de barra invertida (\
) debe utilizarse para escapar las comillas dobles dentro del parámetro. Ejemplo:
Para obtener más información sobre la sintaxis de las funciones de macro, consulte: Funciones de macro
Las funciones de macro son compatibles con las macros de bajo nivel de descubrimiento desde Zabbix 4.0.
1 En los campos marcados con 1 una sola macro debe rellenar todo el campo. No se admiten varias macros en un campo ni macros mezcladas con texto.