5 Macros de expresión
Descripción general
Las macros de expresión son útiles para los cálculos de fórmulas. Están calculadas expandiendo todas las macros internas y evaluando la expresión resultante.
Las macros de expresión tienen una sintaxis especial:
{?EXPRESSION}
La sintaxis en EXPRESSION es la misma que en las expresiones de activación (consulte las limitaciones de uso a continuación).
Las macros {HOST.HOST<1-9>} e {ITEM.KEY<1-9>} se admiten dentro de las macros de expresión. Las macros {ITEM.KEY<1-9>} están soportadas en las macros de expresión a partir de Zabbix 6.0.9.
Uso
En las siguientes ubicaciones:
- nombres de gráficos
- etiquetas de elementos de mapa
- etiquetas de formas de mapa
- etiquetas de vínculos de mapa
solo se permite una única función, del siguiente conjunto: avg, last, max, min,
como macro de expresión, p. ej.:
{?avg(/{HOST.HOST}/{ITEM.KEY},1h)}
Las expresiones como {?last(/host/item1)/last(/host/item2)}, {?count(/host/item1,5m)}
y {?last(/host/item1)*10} son incorrectas en estas ubicaciones.
Sin embargo, en:
- nombres de eventos de iniciador
- notificaciones y comandos basados en iniciadores
- notificaciones y comandos de actualización de problemas
Se permiten expresiones complejas, p. ej.:
{?trendavg(/host/item1,1M:now/M)/trendavg(/host/item1,1M:now/M-1y)*100}
Al usar macros de expresión en plantillas, no especifique el nombre de la plantilla, sino que utilice {HOST.HOST<N>}, porque los nombres de plantilla no se sustituyen por equipos durante la vinculación.
También puede omitir la referencia de equipo por completo para el primer equipo, p. ej. {?avg(//item1,1h)}
Consulte también:
- Macros compatibles para obtener una lista de ubicaciones compatibles con la macro de expresión
- Ejemplo de uso de una macro de expresión en el nombre del evento