Table of Contents

6 Expression macros

Overview

Expression macros are useful for formula calculations. They are calculated by expanding all macros inside and evaluating the resulting expression.

Expression macros have a special syntax:

{?MACRO}
Copy
✔ Copied

See example of using an expression macro in the event name.

Usage

In the following locations:

  • graph names
  • map element labels
  • map shape labels
  • map link labels

only a single function, from the following set: avg, last, max, min, is allowed as an expression macro, e.g.:

{?avg(/{HOST.HOST}/key,1h)}
Copy
✔ Copied

Expressions such as {?last(/host/item1)/last(/host/item2)}, {?count(/host/item1,5m)} and {?last(/host/item1)*10} are incorrect in these locations.

However, in:

  • trigger event names
  • trigger-based notifications and commands
  • problem update notifications and commands

complex expressions are allowed, e.g.:

{?trendavg(/host/item1,1M:now/M)/trendavg(/host/item1,1M:now/M-1y)*100}
Copy
✔ Copied

See also:

  • Supported macros for a list of supported locations of the expression macro
  • Example of using an expression macro in the event name
To toggle search highlight, press Ctrl+Alt+H
Have an improvement suggestion for this page? Select the text that could be improved and press Ctrl+Enter to send it to the editors.