Repolode
influxdata

influxdata/telegraf

Go-based agent that collects, processes, aggregates and writes metrics, logs and other data using over 300 plugins and TOML configuration.

Stars
17,896
Forks
5,851
Open issues
436
Last commit
16 hours ago

What is it?

Telegraf is an agent that gathers metrics, logs and other arbitrary data from a wide range of sources, processes and aggregates it, and writes it to downstream destinations. Users describe the inputs and outputs they want in a TOML configuration file, and the agent collects from inputs at each interval and sends data to outputs at each flush interval.

The project ships more than 300 plugins covering device protocols such as OPC UA and Modbus, log files, messaging systems like Kafka, MQTT and AMQP, monitoring sources including Prometheus and OpenTelemetry, system metrics for CPU, memory, disk, network and Docker, and Windows event logs and performance counters. It also lets users run their own code to transform data in the pipeline.

Telegraf compiles into a standalone static binary with no external dependencies. Installation options include binary builds, Docker images, and RPM and DEB packages.

Key features

  • 01Over 300 input, processor and output plugins for devices, logs, messaging and system metrics.
  • 02Configuration through a TOML file that declares inputs and outputs.
  • 03Ships as a standalone static binary with no external dependencies.
  • 04Supports user-defined code to transform data during collection.
  • 05Packages available as binaries, Docker images, RPM and DEB.

Use cases

  • Collecting host and container metrics for a monitoring stack built on InfluxDB.
  • Pulling data from industrial devices over OPC UA or Modbus into a time-series database.
  • Forwarding Kafka or MQTT messages to storage after light processing.
  • Gathering Windows event logs and performance counters on servers.

Quick start

  1. 1

    Choose an install method from the install guide (binary, Docker, RPM/DEB packages)

  2. 2

    Write a TOML configuration with the plugins you want, then pass it to Telegraf

In collections

Topics

FAQ

What is telegraf?
Go-based agent that collects, processes, aggregates and writes metrics, logs and other data using over 300 plugins and TOML configuration. Telegraf is an agent that gathers metrics, logs and other arbitrary data from a wide range of sources, processes and aggregates it, and writes it to downstream destinations. Users describe the inputs and outputs they want in a TOML configuration file, and the agent collects from inputs at each interval and sends data to outputs at each flush interval.
Is telegraf free to use? What license does it have?
telegraf is open source under the MIT license. Check the license terms before using it in commercial products.
Is telegraf still maintained?
Actively maintained. The last commit to telegraf was on Nov 6, 2026.
What can I use telegraf for?
Collecting host and container metrics for a monitoring stack built on InfluxDB. Pulling data from industrial devices over OPC UA or Modbus into a time-series database. Forwarding Kafka or MQTT messages to storage after light processing. Gathering Windows event logs and performance counters on servers.
How do I install telegraf?
Choose an install method from the install guide (binary, Docker, RPM/DEB packages) Write a TOML configuration with the plugins you want, then pass it to Telegraf
Where can I get telegraf?
The source code and installation instructions are on GitHub: https://github.com/influxdata/telegraf

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects