Icinga Module - Graphite
Find a file
2016-02-15 21:49:44 +01:00
application show/overview: timeperiod dropdown 2016-02-15 21:49:44 +01:00
library/Graphite GraphiteUtil: fix regex for multi-instance matches 2016-02-11 20:43:29 +01:00
public/css show/overview: add new generic overview section 2015-06-22 17:21:41 +02:00
sample-config sample-config: new templates: fork rate, MySQL 2015-06-22 17:31:09 +02:00
configuration.php configuration.php: use new non-translation mode 2016-02-10 20:08:30 +01:00
README.md Update configuration docs 2015-09-06 12:11:26 +02:00
run.php Graphite module prototype: initial commit 2015-06-03 10:30:57 +02:00

Graphite module for Icinga Web 2

General Information

This module integrates an existing Graphite installation in your Icinga Web 2 web frontend.

Note

This is a showcase module and to be considered an unsupported prototype unless explicitely stated otherwise.

Features

  • Global overview underneath Reporting menu section
  • Detail view actions: Jump from host/service detail view directly into Graphite Web

Requirements

  • Icinga Web 2 v2.0.0 (or git snapshot younger than 5.9.2015 using namespaced controllers)
  • Icinga 2 v2.4.0 using the new Graphite tree in (#9461).
  • Graphite and Graphite Web

Installation

Just extract this to your Icinga Web 2 module folder. Enable the graphite module in your Icinga Web 2 frontend (Configuration -> Modules -> graphite -> enable) and it should work out of the box.

NB: It is best practice to install 3rd party modules into a distinct module folder like /usr/share/icingaweb2/modules. In case you don't know where this might be please check the module path in your Icinga Web 2 configuration.

Configuration

Copy the sample configuration to /etc/icingaweb2/modules like so:

mkdir /etc/icingaweb2/modules/graphite
cp -rv sample-config/* /etc/icingaweb2/modules/graphite/

Change permissions (Note: Change apache to the user your webserver is running as). Example for RHEL/CentOS/Fedora:

chown -R apache:apache /etc/icingaweb2/modules/graphite

Edit /etc/icingaweb2/modules/graphite/config.ini and set web_url to the Graphite web host.

[global]
web_url = http://my.graphite.web

Modify the host_pattern attribute to match your current tree.

Example for Icinga 2 v2.4.x:

host_pattern = icinga2.$hostname

You don't need any configuration in your Icinga 2 installation (e.g. additional custom vars).

Templates

There are several sample templates shipped with this module.

When using the Icinga 2 v2.4.x+ tree, you may filter based on

  • host name
  • service name
  • check command name (similar to other graphing solution such as PNP)

TODO

  • Web based configuration
  • Additional filters
  • Tree integration for detail views

Testdrive

Icinga 2 and Graphite feature enabled:

icinga2 feature enable graphite

Graphite and Graphite Web running, e.g. as docker instance:

sudo docker run -d --name graphite --restart=always -p 9090:80 -p 2003:2003 hopsoft/graphite-statsd

Icinga Web 2 with Graphite module enabled

[global]
web_url = http://localhost:9090
host_pattern = icinga2.$hostname