Las macros de expresión son útiles para cálculos de fórmulas. Se calculan expandiendo todas las macros dentro de ellas y evaluando la expresión resultante.
Las macros de expresión tienen una sintaxis especial:
La sintaxis en EXPRESIÓN es la misma que en expresiones de disparadores (ver limitaciones de uso más abajo).
Las macros {FUNCTION.VALUE<1-9>} y {FUNCTION.RECOVERY.VALUE<1-9>} pueden usarse para hacer referencia a los valores de función de las expresiones de disparadores y expresiones de recuperación de disparadores, por ejemplo:
{?{FUNCTION.VALUE2} - {FUNCTION.VALUE3}}
Las macros {HOST.HOST<1-9>} y {ITEM.KEY<1-9>} pueden usarse dentro de las funciones para hacer referencia a equipos y métricas, por ejemplo:
{?max(/{HOST.HOST}/{ITEM.KEY},3h)}
En las siguientes ubicaciones:
solo se permite una única función, del siguiente conjunto: avg
, last
, max
, min
, como una macro de expresión, por ejemplo:
Expresiones como {?last(/equipo/métrica1)/last(/equipo/métrica2)}
, {?count(/equipo/métrica1,5m)}
y {?last(/equipo/métrica1)*10}
son incorrectas en estas ubicaciones.
Sin embargo, en:
se permiten expresiones complejas, por ejemplo:
Al usar macros de expresión en plantillas, por favor no especifique el nombre de la plantilla, sino que utilice {HOST.HOST<N>}, porque los nombres de las plantillas no se sustituyen por los equipos durante el enlace. También puede omitir la referencia al equipo por completo para el primer equipo, por ejemplo: {?avg(//métrica1,1h)}
Véase también: