Grafana
Grafana is an open-source, general purpose dashboard and graph composer, which runs as a web application. It supports graphite, InfluxDB, Prometheus or opentsdb as backends.
Installation
After that you can enable and start grafana.service
and access the application on localhost, e.g.: http://127.0.0.1:3000 . The default username is admin
and password admin
to access the web frontend.
*:3000
so make sure to change the configuration or enable the relevant firewall rules.Example usage
Influxdb installation
One often used backend is InfluxDB. Enable and start influxdb.service
. The web interface is available at http://localhost:8086/
Aggregate data
In case of scaleable server monitoring in combination with Grafana and InfluxDB, one could choose software like collectdAUR. More generally any measurement data can be aggregated with InfluxDB and displayed with Grafana. There are modules and libraries for several programming languages to interact with InfluxDB and one could even store data with a simple http post command using the program curl.
Herefore, create a database named example
:
curl -G http://localhost:8086/query --data-urlencode "q=CREATE DATABASE example"
Post data into the example
database:
curl -i -XPOST 'http://localhost:8086/write?db=example' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.64 1434055562000000000'
Creating Grafana dashboard
- Before creating a dashboard, we have to add a data source. So first click on
Data sources
in the left menu and then onAdd new
. - Name can be something like
influxdb
and the type should be set toInfluxDB 0.9
. In this example, the url for the Http settings ishttp://localhost:8086
. Note that the port is not the same as the one of the web interface! Database name corresponds to the one earlier chosen, e.g.example
. If not changed, username and password areroot
. - Click on
Test connection
to see everything is working and then onSave
. - Next, back at the front page, click
Home
in the left-upper corner and then onNew
. - Now this might be a bit counter-intuitive, but to add a new dashboard you have to hover and click over the little green box on the left side and then, for example, choose:
Add panel
andGraph
. - Click on the title of the new graph and select
Edit
. - In the graph settings in
Metrics
chooseinfluxdb
as data source in the lower-right corner. - Create a query by selecting your aggregated data. Click on
select measurement
which is located besideFROM
. In the dropdown menu should appear a list of "tables" in your database, e.g. the table namedlocalhost
. If no suggestions comes up, your connection to InfluxDB might be broken or no data has been aggregated yet. - Beside the bold text
SELECT
click onvalue
and choose for example the measurement datauptime
. - To save changes, click
Back to dashboard
, then the floppy disc icon.