Documentation

Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

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:

{?EXPRESSION}

{HOST.HOST<1-9>} and {ITEM.KEY<1-9>} macros are supported inside expression macros. {ITEM.KEY<1-9>} macros are supported in expression macros since Zabbix 6.2.3.

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}/{ITEM.KEY},1h)}

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}

See also:

  • Supported macros for a list of supported locations of the expression macro
  • Example of using an expression macro in the event name