SlideShare a Scribd company logo
I N F L U X D B U N I V E R S I T Y
Intro to Telegraf
Getting Started Training Series
Samantha Wang
Product Manager, InfluxData
Brought to you by InfluxDB University
InfluxDB University offers free live and self-paced training on:
• InfluxDB
• Telegraf
• Flux
• Kapacitor
• and more
influxdbu.com
Agenda
• What is Telegraf
• Plugin Ecosystem
• Getting Started with Telegraf
• Extending the Ecosystem
Intro to Telegraf
Characteristics
of the data
• Time-stamped
• Generated in regular
(metric) and
irregular (event) time
periods
• Huge volumes
• Real time and time
sensitive
InfluxDB is 3 things
API &
Toolset
POWERFUL
for real-time apps
HIGH PERFORMANCE MASSIVE
for real-time data
workloads
of cloud & open source
developers
1 2 3
Time Series
Engine
Community &
Ecosystem
Reference Architecture
Data Sources
Application
Workflows
Infrastructure
Insights
Telegraf
Client Libraries
HTTP
Syslog
Kubernetes
Apache Kafka
Python
Arduino
Node.js
JavaScript
Go
Data Systems
Mobile apps
Web apps
Cloud Services
Devices
Sensors
Databases
Networks
Message Queues
APIs
IoT Platforms
CRMs
InfluxDB Platform
IoT
Actions
InfluxDB
Purpose-Built Time Series Database
Visualization, Query & Task Engine
Collect
Downsample
Trigger
Alert
Transform
…
200+ Plugins
20+ Languages
…
New Square
Native Ecosystems
JMeter
NiFi
AWS Kinesis
Azure Event Hubs
GCP PubSub
Java
.NET/C#
PHP
Ruby
Vector
Fluentd
Intro to Telegraf
Current Data Acquisition - All Methods
Agent-based Push (aka Telegraf)
Agentless Pull (aka Scrapers)
Client Libraries
Native/Ecosystem
• 200+ Telegraf plugins
• Regular cadence of releases
• Why use it?
○ No code
○ Large community
○ Lightweight but powerful
○ Customizable
• Prometheus scraper (OSS only)
• Flux prometheus.from
• Flux csv.from(url)
• Why use them?
○ Get data in quickly
○ Doesn’t require agent downloads on
monitoring device
• 7 Libraries: Python, C#, Java, GO,
Javascript/Node.js, Ruby, PHP
• Handles batching, chunking, setting right
headers, etc.
• Why use them?
○ Easy way to get started
○ Need libraries when building custom
applications
• Source system speaks line protocol
• Examples: JMeter, NiFi, Vector, Fluentd
• Influx CLI CSV Import
• Why use them?
○ Know what you want to monitor,
quick and easy integration
Telegraf provides the benefits of…
• Low/No code
• Robust scheduler
• High-speed ingestion
• Full-streaming support
• Metric routing
• Flexible parsing, formatting, serializing
• Customizable and Extensible (ExecD
plugins, Starlark)
Instead of…
• Writing long data scraping scripts
• Worrying about unreliable data
collection
• Trouble scaling your data collection
• Resulting in messy data
• Having a lot of unnecessary data in
your database
Telegraf:
Agent for Collecting Metrics & Events
Plugin-driven server agent
for collecting and reporting
metrics
• Written in Go
• Single Binary, No external
dependencies
• Minimal memory footprint
• Optimized for writing to
InfluxDB
• Optimized for streaming data
Telegraf
HTTP
Syslog
Kubernetes
Apache Kafka
InfluxDB
Purpose-Built Time Series Database
Visualization, Query & Task Engine
Collect
Downsample
Trigger
Alert
Transform
200+ Plugins
AWS Kinesis
Azure Event Hubs
GCP PubSub
Telegraf:
Agent for Collecting Metrics & Events
• Input plugins to source a variety of metrics
• directly from the system it’s running on
• pull metrics from third party APIs
• listen for metrics via a statsd and
Kafka consumer services
• Output plugins to send metrics to a variety of other datastores,
services, and message queues
• InfluxDB, Graphite, OpenTSDB, Datadog, and many others
• Writes to multiple outputs at the same time
• Metrics routing and conversion
• Aggregation stage for InfluxDB
Core Telegraf functionality
• Robust scheduler
• Adjustments for clock-drift
• Adjustments for job scheduling issues that may occur
• In-memory metric buffers
• Metric tracking with flow back-pressure in plugins like Kafka
• Full-streaming support
• Metric routing: name & field pass & drop
• Flexible parsing, formatting, serializing
Plugins! Plugins! Plugins!
Telegraf Plugin Ecosystem
Input Plugins
• collect metrics from system, services,
or third-party APIs
Output Plugins
• write data to various destinations
Processors
• transform, decorate, and/or filter metrics
Aggregators
• create aggregate metrics
(e.g. mean, min, max, quantiles, etc.)
Supports:
Telegraf Plugin Types
Input Output
Processors Aggregators
200+ 45+
25+ 5+
Covering: Applications / Build and Deploy / Logging / Messaging / Networking / IoT/ Systems
Input Plugins
activemq
aerospike
amqp_consumer
apache
apcupsd
aurora
azure_storage_queue
bcache
beanstalkd
bind
bond
burrow
cassandra
ceph
cgroup
chrony
cisco_telemetry_mdt
clickhouse
cloud_pubsub
cloud_pubsub_push
cloudwatch
conntrack
consul
couchbase
couchdb
cpu
dcos
disk
diskio
disque
dmcache
dns_query
docker
docker_log
dovecot
ecs
elasticsearch
ethtool
eventhub_consumer
exec
execd
fail2ban
fibaro
file
filecount
filestat
fireboard
fluentd
github
gnmi
graylog
haproxy
hddtemp
http
http_listener_v2
http_response
httpjson
icinga2
infiniband
influxdb
Input Plugins (2)
influxdb_listener
influxdb_v2_listener
intel_rdt
internal
interrupts
ipmi_sensor
ipset
iptables
ipvs
jenkins
jolokia
jolokia2
jti_openconfig_telemetry
kafka_consumer
kafka_consumer_legacy
kapacitor
kernel
kernel_vmstat
kibana
kinesis_consumer
kube_inventory
kubernetes
lanz
leofs
linux_sysctl_fs
logparser
logstash
lustre2
mailchimp
marklogic
mcrouter
mem
memcached
mesos
minecraft
modbus
mongodb
monit
mqtt_consumer
multifile
mysql
nats
nats_consumer
neptune_apex
net
net_response
nginx
nginx_plus
nginx_plus_api
nginx_sts
nginx_upstream_check
nginx_vts
nsd
nsq
nsq_consumer
nstat
ntpq
nvidia_smi
opcua
openldap
Input Plugins (3)
openntpd
opensmtpd
openweathermap
passenger
pf
pgbouncer
phpfpm
ping
postfix
postgresql
postgresql_extensible
powerdns
powerdns_recursor
processes
procstat
prometheus
proxmox
puppetagent
rabbitmq
raindrops
ras
redfish
redis
rethinkdb
riak
salesforce
sensors
sflow
smart
snmp
snmp_legacy
snmp_trap
socket_listener
solr
sqlserver
stackdriver
statsd
suricata
swap
synproxy
syslog
sysstat
system
systemd_units
tail
tcp_listener
teamspeak
temp
tengine
tomcat
trig
twemproxy
udp_listener
unbound
uwsgi
varnish
vsphere
webhooks
win_eventlog
win_perf_counters
win_services
wireguard
wireless
x509_cert
zfs
zipkin
zookeeper
Processor Plugins
clone
converter
date
dedup
defaults
enum
execd
filepath
ifname
override
parser
pivot
port_name
printer
regex
rename
reverse_dns
s2geo
starlark
strings
tag_limit
template
topk
unpivot
Aggregator Plugins
basicstats
final
histogram
merge
minmax
valuecounter
Output Plugins
amon
amqp
application_insights
azure_monitor
cloud_pubsub
cloudwatch
cratedb
datadog
discard
dynatrace
elasticsearch
exec
execd
file
graphite
graylog
health
http
influxdb
influxdb_v2
instrumental
kafka
kinesis
librato
logzio
mqtt
nats
newrelic
nsq
opentsdb
prometheus_client
riemann
riemann_legacy
socket_writer
stackdriver
sumologic
syslog
timestream
warp10
wavefront
yandex_cloud_monitoring
One Telegraf, Multiple Plugins
InfluxDB
File
Kafka
CloudWatch
CPU
Mem
Disk
Docker
Kubernetes
/metrics
Kafka
MySQL
CloudWatch
InfluxDB
Purpose-Built Time Series Database
Visualization, Query & Task Engine
Collect
Downsample
Trigger
Alert
Transform
Input Process Aggregate Output
- mean
- min,max
- count
- variance
- stddev
- transform
- decorate
- filter
Data Systems
Data Sources
Can’t find the plugin you need?
Telegraf is 100% open
source with a strong
community of contributors
It’s easy to write your own Telegraf
plugin!
1. Follow the contribution guide
for Go
2. Write your plugin in any
language and run it externally
with ExecD
Popular Plugins
Out-of-the-box Custom
Kubernetes (kubelet) HTTP/socket listener
Kube_inventory (apiserver) HTTP (formatted endpoints)
Kafka (consumer) Prometheus (/metrics)
SNMP Exec/Execd
AMQP (mq metadata) StatsD
Redis
Nginx
HAproxy
Jolokia2
Parsing
JSON
CSV
Graphite
Prometheus
CollectD
Dropwizard
Form URL-encoded
Grok
Getting Started with Telegraf
Download Telegraf
influxdata.com/download
Configuration Basics
Telegraf Configuration Snippets
Include many plugins per Telegraf
• multiple inputs, outputs,
processors, aggregators
What’s in a configuration file?
• The Telegraf config file needs
to be specified for Telegraf
agent to operate properly.
• It contains setup for the
agent, global tags, and
enabled outputs (through
commenting out or removing
unnecessary lines)
Set and Test Your Configuration
$ telegraf --input-filter cpu:system --output-filter influxdb --processor-filter starlark --aggregator-filter
valuecounter config > telegraf.conf
WRITE DESIRED CONFIG FILE
RUN CONFIG FILE TEST
$ telegraf --config telegraf.conf --test
VERIFY YOUR CONFIG WORKS
Telegraf Demo
Extending the Ecosystem
You can extend Telegraf by:
• Work with the open-source community or submit upgrades or
enhancements for existing plugins
• Use ExecD to write a plugin in Go or a language of your choice
• Starlark processor: calls a Starlark function for each matched
metric, allowing for custom programmatic metric processing
• Math operations
• String operations
• Renaming tags
• Logic operations
External plugins via ExecD
• Plugin runs in its own process
• Requires line protocol
• Avoid the need for review by Telegraf team
• Supports the same API as an internal plugin
• Can use for non-GO plugins
• Can use for licensed software plugins
• Can use for any type of plugin (input, output, processor,
aggregator)
Execd Plugin Arch.
[[processors.execd]]
command = ["python", "./processors/forecasting.py"]
Sample ExecD Config: Input, Output, Processor
Telegraf Community
Customer Quotes
“Telegraf is like a swiss army knife
for connecting various MQTT
sources and OPC UA sources.”
— Fr. Ant. Niedermayr
“Our next-generation pipeline
takes advantage of Kafka and
the Telegraf streaming service
to create a more robust data
topology. Essentially this allows
us to explicitly implement the
four R’s: routability, retention,
resilience, and redundancy.”
— Wayfair
Get involved with Telegraf
Telegraf GitHub: github.com/influxdata/telegraf
Community Slack: influxdata.com/slack
• #telegraf
• #telegraf-dev
Community Website: community.influxdata.com
Changes to Telegraf releases
• Discontinuing release candidates
• Telegraf users will be directed to test the following:
• nightly builds
• pull request artifacts
• If you wish to be actively tagged on PRs specific to technology
(SNMP vs Windows vs logging) please fill out this form
Telegraf Office Hours / Clinic
A place for users and contributors to bring their problems, pull
requests, or even show-and-tell how they’re using Telegraf.
• Debugging problems / diagnose issues with deploying /
configuring / using Telegraf
• Reviewing pull requests
• Brainstorm ideas for improving Telegraf
References
• Getting started with Telegraf
• Telegraf plugins
• Telegraf GitHub Page
• External Plugins Guide
www.influxdbu.com

More Related Content

PDF
Introduction to influx db
PDF
Gain Better Observability with OpenTelemetry and InfluxDB
PDF
Distributed Tracing for Kafka with OpenTelemetry with Daniel Kim | Kafka Summ...
PDF
Server monitoring using grafana and prometheus
PDF
System monitoring
PDF
Intro to InfluxDB
PDF
Distributed tracing using open tracing & jaeger 2
PDF
PromQL Deep Dive - The Prometheus Query Language
Introduction to influx db
Gain Better Observability with OpenTelemetry and InfluxDB
Distributed Tracing for Kafka with OpenTelemetry with Daniel Kim | Kafka Summ...
Server monitoring using grafana and prometheus
System monitoring
Intro to InfluxDB
Distributed tracing using open tracing & jaeger 2
PromQL Deep Dive - The Prometheus Query Language

What's hot (20)

PDF
Getting Started: Intro to Telegraf - July 2021
PDF
Kubeflow
PDF
An overview of the Kubernetes architecture
PDF
How to Build a Telegraf Plugin by Noah Crowley
PDF
InfluxDB & Grafana
PDF
Kubeflow Pipelines (with Tekton)
PDF
Prometheus
PDF
Using MLOps to Bring ML to Production/The Promise of MLOps
PPTX
Prometheus - Intro, CNCF, TSDB,PromQL,Grafana
PPTX
Integrating Apache Spark and NiFi for Data Lakes
PDF
Intro to Time Series
PDF
Deploying your first application with Kubernetes
PDF
Write your own telegraf plugin
PDF
From airflow to google cloud composer
PDF
Exploring BigData with Google BigQuery
PPTX
Elastic Stack Introduction
PDF
cLoki: Like Loki but for ClickHouse
PDF
Disaster Recovery using AWS -Architecture blueprints
PDF
Getting Started with Apache Spark on Kubernetes
PDF
Kubernetes dealing with storage and persistence
Getting Started: Intro to Telegraf - July 2021
Kubeflow
An overview of the Kubernetes architecture
How to Build a Telegraf Plugin by Noah Crowley
InfluxDB & Grafana
Kubeflow Pipelines (with Tekton)
Prometheus
Using MLOps to Bring ML to Production/The Promise of MLOps
Prometheus - Intro, CNCF, TSDB,PromQL,Grafana
Integrating Apache Spark and NiFi for Data Lakes
Intro to Time Series
Deploying your first application with Kubernetes
Write your own telegraf plugin
From airflow to google cloud composer
Exploring BigData with Google BigQuery
Elastic Stack Introduction
cLoki: Like Loki but for ClickHouse
Disaster Recovery using AWS -Architecture blueprints
Getting Started with Apache Spark on Kubernetes
Kubernetes dealing with storage and persistence
Ad

Similar to Intro to Telegraf (20)

PDF
INTERFACE by apidays 2023 - Data Collection Basics, Anais Dotis-Georgiou, Inf...
PPTX
How to Use Telegraf and Its Plugin Ecosystem
PDF
Samantha Wang [InfluxData] | Data Collection Overview | InfluxDays 2022
PDF
OSMC 2024 | Telegraf – A data collection agent by Sven Rebhan.pdf
PDF
OSMC 2019 | The Telegraf Toolbelt: It Can Do That, Really? by David McKay
PDF
Alan Pope [InfluxData] | Data Collectors | InfluxDays 2022
PPTX
Taming the Tiger: Tips and Tricks for Using Telegraf
PDF
InfluxDB Live Product Training
PDF
The Telegraf Toolbelt | David McKay | InfluxData
PDF
The Telegraf Toolbelt: It Can Do That, Really? | David McKay | InfluxData
PDF
Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...
PDF
Taming the Tiger: Tips and Tricks for Using Telegraf
PDF
Monitoring InfluxEnterprise
PDF
InfluxDB + Telegraf Operator: Easy Kubernetes Monitoring
PDF
Lessons Learned: Running InfluxDB Cloud and Other Cloud Services at Scale | T...
PDF
Building a Telegraf Plugin by Noah Crowly | Developer Advocate | InfluxData
PDF
How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...
PPTX
Lessons Learned Running InfluxDB Cloud and Other Cloud Services at Scale by T...
PDF
Optimizing Time Series Performance in the Real World
PDF
Maximizing Real-Time Data Processing with Apache Kafka and InfluxDB: A Compre...
INTERFACE by apidays 2023 - Data Collection Basics, Anais Dotis-Georgiou, Inf...
How to Use Telegraf and Its Plugin Ecosystem
Samantha Wang [InfluxData] | Data Collection Overview | InfluxDays 2022
OSMC 2024 | Telegraf – A data collection agent by Sven Rebhan.pdf
OSMC 2019 | The Telegraf Toolbelt: It Can Do That, Really? by David McKay
Alan Pope [InfluxData] | Data Collectors | InfluxDays 2022
Taming the Tiger: Tips and Tricks for Using Telegraf
InfluxDB Live Product Training
The Telegraf Toolbelt | David McKay | InfluxData
The Telegraf Toolbelt: It Can Do That, Really? | David McKay | InfluxData
Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...
Taming the Tiger: Tips and Tricks for Using Telegraf
Monitoring InfluxEnterprise
InfluxDB + Telegraf Operator: Easy Kubernetes Monitoring
Lessons Learned: Running InfluxDB Cloud and Other Cloud Services at Scale | T...
Building a Telegraf Plugin by Noah Crowly | Developer Advocate | InfluxData
How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...
Lessons Learned Running InfluxDB Cloud and Other Cloud Services at Scale by T...
Optimizing Time Series Performance in the Real World
Maximizing Real-Time Data Processing with Apache Kafka and InfluxDB: A Compre...
Ad

More from InfluxData (20)

PPTX
Announcing InfluxDB Clustered
PDF
Best Practices for Leveraging the Apache Arrow Ecosystem
PDF
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
PDF
Power Your Predictive Analytics with InfluxDB
PDF
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
PDF
Build an Edge-to-Cloud Solution with the MING Stack
PDF
Meet the Founders: An Open Discussion About Rewriting Using Rust
PDF
Introducing InfluxDB Cloud Dedicated
PPTX
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
PDF
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
PPTX
Introducing InfluxDB’s New Time Series Database Storage Engine
PDF
Start Automating InfluxDB Deployments at the Edge with balena
PDF
Understanding InfluxDB’s New Storage Engine
PDF
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
PPTX
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
PDF
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
PDF
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
PDF
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
PDF
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
PDF
Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022
Announcing InfluxDB Clustered
Best Practices for Leveraging the Apache Arrow Ecosystem
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
Power Your Predictive Analytics with InfluxDB
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
Build an Edge-to-Cloud Solution with the MING Stack
Meet the Founders: An Open Discussion About Rewriting Using Rust
Introducing InfluxDB Cloud Dedicated
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
Introducing InfluxDB’s New Time Series Database Storage Engine
Start Automating InfluxDB Deployments at the Edge with balena
Understanding InfluxDB’s New Storage Engine
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022

Recently uploaded (20)

PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
Machine Learning_overview_presentation.pptx
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Getting Started with Data Integration: FME Form 101
PPTX
A Presentation on Artificial Intelligence
PPTX
Spectroscopy.pptx food analysis technology
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Machine learning based COVID-19 study performance prediction
PDF
Empathic Computing: Creating Shared Understanding
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PPT
Teaching material agriculture food technology
PPTX
Tartificialntelligence_presentation.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Diabetes mellitus diagnosis method based random forest with bat algorithm
Machine Learning_overview_presentation.pptx
Group 1 Presentation -Planning and Decision Making .pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Getting Started with Data Integration: FME Form 101
A Presentation on Artificial Intelligence
Spectroscopy.pptx food analysis technology
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Advanced methodologies resolving dimensionality complications for autism neur...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
A comparative study of natural language inference in Swahili using monolingua...
Machine learning based COVID-19 study performance prediction
Empathic Computing: Creating Shared Understanding
Heart disease approach using modified random forest and particle swarm optimi...
Teaching material agriculture food technology
Tartificialntelligence_presentation.pptx

Intro to Telegraf