Telegraf is an agent for collecting metrics and writing them into InfluxDB or other possible outputs.
In this playground, you've got Telegraf and InfluxDB already installed and configured.
Configuration
The configuration file is located at /etc/telegraf/telegraf.conf
. It enables several inputs such as cpu
and mem
that read metrics about the system’s cpu and memory usage. It also specifies InfluxDB as the desired output.
You can view and edit the config using nano
or vim
:
nano /etc/telegraf/telegraf.conf
How to use it
Run a single collection of metrics and print them to stdout:
telegraf --test
Collect metrics only from cpu
and mem
inputs and print them to stdout:
telegraf --input-filter cpu:mem --test
Start the Telegraf service
sudo service telegraf start
Once Telegraf is up and running, it will start collecting metrics and writing them to the local InfluxDB every 10 seconds.
You can check Telegraf and InfluxDB logs at /var/log/telegraf/telegraf.log
and /var/log/influxdb/influxd.log
respectively.
Explore metrics in InfluxDB
Enter the interactive InfluxDB shell and connect to the telegraf
database:
influx -database telegraf
Once in the InfluxDB shell, list all measurements in the database:
> SHOW MEASUREMENTS
name: measurements
name
----
cpu
disk
diskio
kernel
mem
processes
swap
system
List all field keys by measurement:
> SHOW FIELD KEYS
name: cpu
fieldKey fieldType
-------- ---------
usage_guest float
usage_guest_nice float
usage_idle float
usage_iowait float
usage_irq float
usage_nice float
usage_softirq float
usage_steal float
usage_system float
usage_user float
...
Select a data sample in the field usage_idle
in the measurement cpu
:
> SELECT usage_idle FROM cpu WHERE cpu = 'cpu-total' LIMIT 5
name: cpu
time usage_idle
---- ----------
1555419650000000000 99.74840657497393
1555419660000000000 99.83283182882222
1555419670000000000 99.81608426684404
1555419680000000000 99.81602274627767
1555419690000000000 99.71576659421494
That’s it! You now have the foundation for using Telegraf to collect metrics and write them to your output of choice.
What's next?
You can explore the official Telegraf documentation and check available input and output plugins.
You can also improve this playground or create your own. Please send a PR or open an issue in github.com/rootnroll/library.