[Grafana] Beautiful metric & analytic dashboards for monitoring

Hello,

A community package is now available for the Grafana application.

Official description:

Grafana provides a powerful and elegant way to create, explore, and share dashboards and data with your team and the world.

Grafana is most commonly used for visualizing time series data for Internet infrastructure and application analytics but many use it in other domains including industrial sensors, home automation, weather, and process control.

Important: This package is designed to be fed by the NetData application for monitoring measures, so please make sure the YunoHost NetData package is installed before installing it!
NetData only collects, displays and sets alarms based on data from the last hour; this packages allows to archive every metrics and put up statistics and dashboards on the long term.

Important at first login:

  • you have to go the Grafana Menu (Grafana icon), select your account menu and select Switch to Main Org.
  • you can now access the default NetData dashboard via the Home menu

Don’t hesitate to create new dashboards: the default dashboard contains metrics from NetData, but only generic ones that are generated on every machine. NetData dynamically detects services and applications (e.g.redis, nginx, etc.) and enriches its dashboard and generated metrics. Many NetData metrics don’t appear in the provided default Grafana dashboard!

Warning: The default dashboard may be updated in a further release of this package, so please make sure you create your own dashboards!
Also, don’t hesitate to propose your dashboards to be integrated into this package :wink:


Package description:

  • installs InfluxDB as time series database
  • if the NetData package is installed, configures NetData to feed InfluxDB every minute
  • installs Grafana as dashboard server
  • creates a Grafana Data Source to fetch data from InfluxDB (and hence NetData!)
  • creates a default dashboard to plot some data from NetData (doesn’t cover every metric, can be greatly enhanced!)

It has been tested on x86_64 and ARM.

General architecture

image

Links

Please feel free to test and report any problem!

3 Likes

H! Thanks for this nice package! I didn’t know about this app; I already liked NetData and Grafana seems to come as a great complement!

Is it normal that it installs in /etc? I think /opt would be more appropriate (like /opt/netdata for instance).

Unless I am totally wrong, I have noticed a few issues that I reported on Github.

Configuration files are in /etc because it installs official packages for Debian. NetData is compiled during installation, so I let the default parameters to install to a separate location in /opt.
I will have a look at your issues, thanks for that!

Hello,

Really great idea. :smiley: It could be great to use the data from glance because it is already installed on yunohost and glance could be used with influxdb. It’s juste an other idea to impove the app. :wink:

Netdata was already a great gift, and now that… thanks a lot ! :slight_smile:

Grafana package was just updated!

Bug fixes:

1: Cannot login after logout - Organization creation doesn’t play well with LDAP integration. Organization creation has been disabled by default for standard users; please do not create organizations via you administrator account!
2: Grafana administrator - Installation now asks for an administrator to give privileged rights

In order to get administrator rights, and provided the package was released yesterday, it is advised to uninstall and reinstall.

Happy upgrading! :wink:

1 Like

Using Glances integration with InfluxDB is a good idea!
The problem is that we need to modify a system file (/etc/glances/glances.conf), which we try to avoid in packages.

Maybe I could at least add the possibility to the README and integrate the default Glances dashboard… ?

1 Like

Do you know if there is any way to reduce the memory consumption of Inbound.db ?

It’s currently taking more than 450MB of RAM (it increases progressively), and as I’m on a raspberry pi, it often needs to swap when I launch a memory hungry task.
Having nice metrics of my system is a good thing, but if that’s the actual cost of it I can’t really let my raspberry swap 90% of the time.

Hi,
I totally understand your frustration.
I can’t reproduce your problems right now, but my servers were rebooted a couple of days ago because of the security update. Yet I didn’t experience such problems the weeks before. I’ll see how it gets in the following days.

Anyway, there seems to be memory problems experienced by others in some situations. You could maybe try this configuration?

For instance right now with 15h of uptime, 761MB used and 1,5GB of swap. It normally never happens.
After a reboot, 232MB used.

I’ll try :slight_smile:

Ok I made the changes (but I’m not 100% sure if I did them correctly ^^) and I experience the same issue.
I have the default swappiness value, 60.

Unfortunately on my x86_64 or ARM servers, influxdb keeps a memory occupation between 120 and 140Mb after a couple of weeks, so I don’t know right now how to assist you… :frowning:

I rebooted yesterday in the afternoon, today I have 2.3 GB of swap used. Definitely something is going wrong ^^

Is there any helpful log that I should inspect ?

If I stop influxdb and grafana services (+netdata), it’s enough to stop everything right ?
I’d like to try disabling both, to be sure the memory issue is not coming from elsewhere. It’s growing really slowly, but surely, and restarting those processes gave ~50MB of extra free memory, but I’m not sure it reduce the memory amount completely.

Yes, you have nothing more to do to disable Grafana package other than stopping influxdb and grafana-server services.
You can let the netdata service on; it will try to contact the backend server (influxdb) a few times, but will stop trying after a couple of failures.

So it sounds like it’s not grafana/influxdb’s fault… I’ll investigate, and open another topic if needed.
Thanks for your help :slight_smile:

Indeed, it was an not issue related to grafana. Solved now :slight_smile:


I have another question: I use this command /opt/vc/bin/vcgencmd measure_temp to get the temperature of my Rasberry Pi. Im’ wondering if there is a way to include this data in grafana (so in netdata too I suppose).
Do you know if it’s possible ?

I would say it is possible to feed InfluxDB withy our values and then serve them to a custom dashboard in Grafana, though I haven’t done anything like this myself.

Some interesting links:
https://ainsey11.com/projects/raspberry-pi-temperature-sensor-that-logs-to-grafana/

1 Like

please help me. my data in influxdb not summar from the server but like this.

netdata.users.cpu.colord
netdata.users.cpu.elasticsearch
netdata.users.cpu.gdm
netdata.users.cpu.grafana
netdata.users.cpu.influxdb
netdata.users.cpu.kibana
netdata.users.cpu.mysql
netdata.users.cpu.netdata

i want influxdb sum of all metric to be one only cpu value. please help me solve my problem. thank you

There’s a CPU Utilization panel in the default NetData dashboard provided with the package. Have you checked that?