6 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.

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 activación
  • notificaciones y comandos basados en activadores
  • 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 hosts durante la vinculación. También puede omitir la referencia de host por completo para el primer host, 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