Grafana-Zabbix

Zabbix datasource for Grafana dashboard

Donate

Display your Zabbix data directly in Grafana dashboards!

Dashboard

Content

Features

Flexible metric editor

  • hosts and items filtering:

Query editor

  • Custom scale for each target:

Scale

Templated dashboards support

Group, host, application or item names can be replaced with a template variable. This allows you to create generic dashboards that can quickly be changed to show stats for a specific cluster, server or application.

Annotations support

  • Display zabbix events on graphs: Annotations
  • Show acknowledges for problems:
    Acknowledges

Read more about Grafana features at grafana.org

Installation

Grafana 1.9.x

See grafana-1.9 branch or Grafana-Zabbix wiki.

Grafana 2.0.x

Download source code from master branch and put zabbix directory into <your grafana-2 installation>/public/app/plugins/datasource/.

  • Edit plugin.json (located in zabbix directory) and set your username and password

    {
      "pluginType": "datasource",
      "name": "Zabbix",
    
      "type": "zabbix",
      "serviceName": "ZabbixAPIDatasource",
    
      "module": "plugins/datasource/zabbix/datasource",
    
      "partials": {
        "config": "app/plugins/datasource/zabbix/partials/config.html",
        "query": "app/plugins/datasource/zabbix/partials/query.editor.html",
        "annotations": "app/plugins/datasource/zabbix/partials/annotations.editor.html"
      },
    
      "username": "guest",
      "password": "",
    
      "metrics": true,
      "annotations": true
    }
    
    
  • Restart grafana server.

  • Add zabbix datasource in Grafana's "Data Sources" menu (see Data Sources docs for more info) and setup your Zabbix API url.

  • Important! Change Access to direct! 2015-05-18 12-46-03 grafana - zabbix org - mozilla firefox

If you use patch for trends support (ZBXNEXT-1193), you don't need to do anything - trends support is enabled by default in plugin.json file:

  "trends": true,
  "trendsFrom": "7d",

trendsFrom option define period when switch to trends from history. You can set the time in Grafana format: 7d for 7 days or for example 2d for 2 days. Valid time specificators are:
h - hours
d - days
M - months

If you don't use trend patch, change trends to false:

  "trends": false,

Note for Zabbix 2.2 or less

Zabbix API (api_jsonrpc.php) before zabbix 2.4 don't allow cross-domain requests (CORS). And you can get HTTP error 412 (Precondition Failed). To fix it add this code to api_jsonrpc.php immediately after the copyright

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Headers: Content-Type');
header('Access-Control-Allow-Methods: POST');
header('Access-Control-Max-Age: 1000');

if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
	return;
}

before

require_once dirname(__FILE__).'/include/func.inc.php';
require_once dirname(__FILE__).'/include/classes/core/CHttpRequest.php';

Full fix listing. For more info see zabbix issues ZBXNEXT-1377 and ZBX-8459.

Note about browser cache

After updating plugin, clear browser cache and reload application page. See details for Chrome, Firefox. You need to clear cache only, not cookies, history and other data.

Troubleshooting

See Grafana troubleshooting for general connection issues. If you have a problem with Zabbix datasource, you should open a support issue. Before you do that please search the existing closed or open issues.

Description
grafana zabbix fork
Readme Apache-2.0 18 MiB
Languages
TypeScript 68.4%
Go 22.8%
SCSS 5.3%
JavaScript 1.3%
Python 1%
Other 1.1%