Grafana Series - Unified Display - 6 - Zabbix Dashboard
This article was last updated on: May 17, 2026 am
Series Articles
│ 📝Notes:
│
│ Regarding Grafana Series - Unified Display - 6 - Zabbix Data Source, it has already been covered in detail in a previous article: Using Grafana for Unified Monitoring Display - Integrating with Zabbix. Please refer to that article if you’re interested.
Prerequisites
Multiple Items on a Single Chart
We can use regular expressions in the metric field to build charts with a large number of items. Grafana uses JavaScript regular expressions. For example, if you need to display CPU time (user, system, iowait, etc.), you can create a chart using this regex in the Item field:
1 | |

Another use case for regex is comparing the same metric across different hosts. Use the /./ regex to display all metrics, or write your own filter. For example, if I want to display the CPU system time for hosts whose names start with backend across all host groups, I use /./ for Group, /^backend/ for Host, and CPU system time for Item.

Template Variable
You can use template variables to create highly reusable and interactive dashboards. The general idea of templating is to allow Grafana to fetch different metrics from the data source and provide a way to change them on the fly without modifying the dashboard. For Zabbix, this means you can retrieve a list of host groups, hosts, applications, or items and add them as variables.
Creating Variables
Type: By default, the Query type is selected. This means Grafana will ask the data source for the variable values. However, there are other types as well: Interval (just a time interval), Data source (you can switch data sources — for example, if you have more than one Zabbix instance and each is added as a data source in Grafana), Custom (you can set any predefined values for the variable), and Constant.
Query Format
Template variable queries in the Zabbix data source are strings containing 4 parts wrapped in curly braces ({}).
1 | |
For example:
1 | |
Each part can be the name of the corresponding metric or * (meaning all metrics).
Examples:
- {*} returns a list of all available host groups
- {}{} all hosts in Zabbix
- {Network}{*} returns all hosts in the Network group
- {Linux servers}{}{} returns all applications for hosts in the Linux servers group
- {Linux Servers}{backend01}{CPU}{*} returns all items belonging to the CPU application on backend01
You can use another variable as part of the query. For example, if you have a variable group that returns a list of host groups and you want to use it to query hosts in the selected group, the query would be:
1 | |
Variables Usage
When you create a variable, you can use it as part of a data source query. Grafana also supports using variables in various places, such as panel and row titles, text panel content, etc.

Hands-On
Here we use the first dashboard found in Grafana Dashboards - Zabbix DataSource as an example — Zabbix - Full Server Status (ID: 5363).

Variables
Group Variable
- Name: Group
- Type: Query
- Data source: zabbix
- Query Type: Group
- Group: /env:[a-z]./ — the default is /./, which matches all groups, but you can write a regex to select specific groups based on your needs. For example, /env:[a-z].*/ selects groups starting with env:[a-z].
Full configuration example:

Host Variable
- Name: Host
- Type: Query
- Data source: zabbix
- Query Type: Host
- Group: $Group — queries further based on the Group Variable result
- Host: /.*/ — queries all hosts under the corresponding group
Disk Variable
- Name: Disk
- Type: Query
- Data source: zabbix
- Query Type: Application
Panel Query
🐾 Item names may vary across different Zabbix versions and need to be adjusted accordingly.
For example, in my case, the Total memory panel of this dashboard was not displaying correctly. It needed to be adjusted as follows:
- Query Mode: Metrics
- Group: $Group
- Host: $Host
- Application: Memory
- Item: /Memory utilization|Available memory/
As shown below:

Additionally, for Linux/Windows metric compatibility, the Item for total CPU count can be adjusted to:
Item: /Number of (CPUs|cores)/
Zabbix Problems
The Grafana Zabbix Plugin also comes with a built-in Zabbix Problems Panel. It integrates with Zabbix Problems to provide a polished display. Here’s what it looks like:

The specific query configuration is as follows:
- Query Mode: Problems
- Then fill in Group, Host, Application, Problem, Tags, etc. as needed.
Detailed configuration:

Each problem can also be clicked to view details, with the ability to jump back to the Zabbix interface to handle it — execute scripts, acknowledge the problem, manually close it, and more. It’s quite powerful.
As shown below:
