Skip to content
The plugin-driven server agent for collecting & reporting metrics.
Go Other
  1. Go 98.7%
  2. Other 1.3%
Branch: master
Clone or download
Pull request Compare This branch is 3 commits ahead, 1188 commits behind influxdata:master.
Latest commit 291b142 Nov 5, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Remove combined issue template May 7, 2018
etc Regenerate telegraf.conf Oct 19, 2018
filter Fix container name filters in docker input (influxdata#3331) Oct 12, 2017
internal Enable gofmt code simplification (influxdata#4887) Oct 19, 2018
.gitignore Fix linter contributing guidelines (influxdata#4806) Oct 4, 2018
LICENSE Update License (influxdata#4865) Oct 16, 2018
Makefile Update Nov 5, 2019
accumulator.go Add history and summary types to telegraf and prometheus plugins (inf… Oct 24, 2017
aggregator.go Refactor handling of MinMax functionality into RunningAggregator Oct 12, 2016
docker-compose.yml Add pgbouncer input plugin (influxdata#3918) Aug 1, 2018
output.go Use separate mutexes for write and aggregation in running_output Sep 12, 2018
processor.go Support Processor & Aggregator Plugins Oct 12, 2016

This repository is only for JTI UDP protobuf. JTI OC is already merged to Telegraf main repo

This code needs update w.r.t latest Junos releases

Telegraf Circle CI Docker pulls

Telegraf is an agent for collecting, processing, aggregating, and writing metrics.

Design goals are to have a minimal memory footprint with a plugin system so that developers in the community can easily add support for collecting metrics.

Telegraf is plugin-driven and has the concept of 4 distinct plugin types:

  1. Input Plugins collect metrics from the system, services, or 3rd party APIs
  2. Processor Plugins transform, decorate, and/or filter metrics
  3. Aggregator Plugins create aggregate metrics (e.g. mean, min, max, quantiles, etc.)
  4. Output Plugins write metrics to various destinations

New plugins are designed to be easy to contribute, we'll eagerly accept pull requests and will manage the set of plugins that Telegraf supports.


There are many ways to contribute:


You can download the binaries directly from the downloads page or from the releases section.

Ansible Role:

Ansible role:

From Source:

Telegraf requires golang version 1.9 or newer, the Makefile requires GNU make.

  1. Install Go >=1.9 (1.10 recommended)
  2. Install dep ==v0.5.0
  3. Download Telegraf source:
    go get -d
  4. Run make from the source directory
    cd "$HOME/go/src/"

Nightly Builds

These builds are generated from the master branch:

How to use it:

See usage with:

telegraf --help

Generate a telegraf config file:

telegraf config > telegraf.conf

Generate config with only cpu input & influxdb output plugins defined:

telegraf --input-filter cpu --output-filter influxdb config

Run a single telegraf collection, outputing metrics to stdout:

telegraf --config telegraf.conf --test

Run telegraf with all plugins defined in config file:

telegraf --config telegraf.conf

Run telegraf, enabling the cpu & memory input, and influxdb output plugins:

telegraf --config telegraf.conf --input-filter cpu:mem --output-filter influxdb


Latest Release Documentation.

For documentation on the latest development code see the documentation index.

Input Plugins



Processor Plugins

Aggregator Plugins

Output Plugins

You can’t perform that action at this time.