Zabbix Documentation 4.0 development:4.0Unsupported versions:

User Tools

Site Tools



5 What's new in Zabbix 4.0.0

Zabbix 4.0.0 is not released yet.

More secure connections for proxies

It is now possible to configure connections for both active and passive proxies in a more secure way:

  • The allowed address range for an active proxy can be limited. When configuring an active proxy in the frontend, there is a new field called Proxy address. If specified then active proxy requests will only be accepted from this list of IP addresses/DNS names of the active proxy.

  • The Server parameter in passive proxy configuration, which previously was ignored, is now mandatory. The passive proxy will reject an address that is not listed in the Server parameter.

Inventory macro support in event tags

{INVENTORY.*} macros are now supported in event tags used for trigger-based event correlation.

Expansion of inventory macros in event tags allows to correlate events (i.e. problems and their resolution), for example, by datacenter location, responsible system administrator, rack number and any other inventory item provided, thus giving administrators even more automation possibilities.

Preventing unit conversion flexibly

Specifying a unit for an item in Zabbix results in a multiplier prefix being added - for example, an incoming value '2048' with unit 'B' would be displayed as '2KB'. The unit blacklist for which such conversion was prevented in previous Zabbix versions was hardcoded and consisted of ms, rpm, RPM, %.

In the new version, any unit can be prevented from being converted by using a ! prefix, for example !B. To better illustrate how this conversion works with and without the blacklisting, see the following examples of values and units:

1024 !B -> 1024 B
1024 B -> 1 KB
61 !s -> 61 s
61 s -> 1m 1s
0 !uptime -> 0 uptime
0 uptime -> 00:00:00
0 !! -> 0 !
0 ! -> 0

Even though the previous unit blacklist also still works, it is now deprecated, so the correct way to prevent conversion for these units is now !ms, !rpm, !RPM, !%

Multiple emails in one user media

Multiple e-mail addresses can now be specified in one user media entry.

If multiple e-mail addresses are specified this way, one e-mail will be sent to all the specified recipients.

Improved database down messages

Database down messages have been improved to provide more details about the occurred problem. Database down message from now on consists of the following content:

[MySQL|PostgreSQL|Oracle|IBM DB2] database <DB Name> [on <DB Host>:<DB Port>] is not available: <error message depending on the type of DBMS (database)> 

<DB Host> is not added to the message if it is defined as an empty value and <DB Port> is not added if it is the default value (“0”).

Item changes/improvements

A new vfs.dir.count agent item has been added to recursively count all entries in the given directory.

The following Zabbix agent items now support new mode values:

  • - overruns (fifo) and compressed
  • - overruns (fifo), frame, compressed and multicast
  • net.if.out - overruns (fifo), collisions (colls), carrier and compressed

For logrt and logrt.count items, a copytruncate log file rotation option has been added.

Execution of external check script

Upon completion of an external check script, arguments are wrapped to single quotes ' instead of double quotes ". This change allows Zabbix to accept more signs in an external check parameter's name. For example, the $ sign is no longer ignored.

Frontend improvements

Mandatory fields marked

Mandatory fields in all Zabbix frontend forms are now marked with a red asterisk.

More flexible problem filtering by tags

More flexibility has been added to problem filtering by event tag name and value:

  • If previously all conditions had to be met, now there are AND and OR calculation types to choose from
  • Additionally, there is now a choice between similar case-insensitive and exact case-sensitive string match

These changes apply to the filter in MonitoringProblems and to the Problems dashboard widget.

Discovered item filtering

In the item list it is now possible to filter items that either:

  • regular items created manually or from a template
  • items discovered by low-level discovery

Popups replaced by overlay dialogs

Popup windows have been replaced by overlay dialog boxes across the frontend.

Additionally, a Cancel button has been added to these windows.

Accessibility improvements

Several improvements have been made to Zabbix frontend in order to make it usable with assistive technologies and generally more friendly for visually-impaired people.

High-contrast themes

Two new high-contrast themes have been added for Zabbix frontend:

  • High-contrast light
  • High-contrast dark

High-contrast light theme

High-contrast dark theme

Within this development, default colours for graphs in the dark themes have also been updated:

  • When creating a new graph in the dark theme, there will be a higher contrast of colours for items added to the graph (already created graphs are not affected).
  • When viewing simple graphs in the dark theme, colours for items will be in higher contrast.
Screen reader-friendly graphs

It is now possible to view graph values as text in a table so that it can be read with a screen reader. This functionality is implemented for custom graphs and ad-hoc graphs.

Readable summary in maps

A hidden “aria-label” property has been added to maps allowing map information to be read with a screen reader. Both general map description and individual element description is available, in the following format:

  • for map description: <Map name>, <* of * items in problem state>, <* problems in total>.
  • for describing one element with one problem: <Element type>, Status <Element status>, <Element name>, <Problem description>.
  • for describing one element with multiple problems: <Element type>, Status <Element status>, <Element name>, <* problems>.
  • for describing one element without problems: <Element type>, Status <Element status>, <Element name>.

For example, this description is available:

'Local network, 1 of 6 elements in problem state, 1 problem in total. Host, Status problem, My host, Free disk space is less than 20% on volume \/. Host group, Status ok, Virtual servers. Host, Status ok, Server 1. Host, Status ok, Server 2. Host, Status ok, Server 3. Host, Status ok, Server 4. '

for the following map:

Icons for notification type

Corresponding icons and colouring have been added at the beginning of frontend notifications to indicate whether the message is about success, failure or warning.

Success message

Failure message

Warning message

These changes allow the actual message to be on a white background, improving overall readability.

Green background removed

Green background has been removed:

  • for resolved problems in the severity column in MonitoringProblems/Triggers and the corresponding dashboard widget
In Zabbix 4.0.0
Before Zabbix 4.0.0
  • for devices that are up in MonitoringDiscovery
Discovery status details

Discovery status details in MonitoringDiscovery are now displayed as text inside the cell, instead of a pop-up that's visible upon mouse over.

In Zabbix 4.0.0 Before Zabbix 4.0.0

In addition, green colouring is removed from cells with uptime, while red remains in the cells with downtime.


  • The allowed character limit has been raised from 63 to 255 ASCII characters for fields containing DNS names. The affected forms are host configuration and passive proxy configuration.
  • When importing maps (MonitoringMapsImport button) the Create new option for importing images is now checked by default:

Performance improvements

Problem name generation

Problem and event names previously were generated on the fly in the frontend and on server side based on the respective trigger name with all the macros expanded. That lead to severe performance issues and also made it impossible to see historical information about problems if the trigger name had changed.

Now problem and event names are stored directly in the event and problem tables at the moment when an event is generated for a problem or recovery. Zabbix frontend can search and query the respective tables directly. This change leads to a better separation of triggers and problems, improves performance,​ especially that of the frontend and maintains historical problem names. However, the size of problem/​events tables is now larger.

Note that for internal events the name contains an error message why an object changed its state; upon recovery no name is used. For discovery and auto-registration events no name is used.

A new {EVENT.NAME} macro is supported, returning the event/​problem name with macros resolved.

See also the upgrade notes for:

Daemon improvements

  • Command line arguments that exceed 2KB are now supported in proc.num and proc.mem checks on AIX platform