Gotta Collect 'Em All - Metrics Easily Visualised
2021-04-10, 13:00–13:40, Session1

Collect system metrics, program outputs and other time-indexed data from your GNU/Linux systems and visualise everything continuously in a visually appealing dashboard using all FLOSS components with everything set up in under 30 minutes.


What now?

This talk covers how you can use the FLOSS metrics agent called Telegraf to collect metrics from all your GNU/Linux machines, your IoT devices, your homelab or your server stacks and send them as time-indexed data to an InfluxDB instance for them to be easily visualized with Grafana.

Why Telegraf?

Because more often than not it is not necessary to run Prometheus or other monitoring solutions with big memory footprints to just collect some temperature data and other system metrics from a Raspberry Pi or the output of some cron job on your GNU/Linux machine.

Telegraf is easily extensible and can be run as a binary with minimal memory consumption or in a container with no need for external dependencies like npm, pip or gem.

Of course Telegraf can also run 'in the cloud' or in a fancy container orchestration engine like Kubernetes, but why not run a slim binary with minimal system requirements compiled from open source Go code on some bare-metal GNU/Linux server.

But how?

In this talk I will show how to deploy the TIG stack (Telegraf, InfluxDB, Grafana) with Docker Compose on a GNU/Linux machine to monitor system resources and the outputs of some scripts.

I will also give an introduction to how the collected metrics can be visualised in Grafana.

Why am I holding this talk?

Because I've been a long-time Linux user, I'm passionate about system monitoring and have been wanting to hold a talk at GLT since first attending a couple years ago.

In my day job as a System Analyst/Administrator I work with more complex monitoring solutions but really appreciate the simplicity of Telegraf to monitor my fully Linux-driven homelab and some IoT sensors.

See also: Slides