SlideShare ist ein Scribd-Unternehmen logo
1 von 60
Downloaden Sie, um offline zu lesen
The Telegraf Toolbelt
It can do that, really?
© 2019 InfluxData. All rights reserved.2
David McKay
Developer Advocate
at InfluxData
@rawkode
🏴󠁧󠁢󠁳󠁣󠁴󠁿 Scottish
🐭 Has 9 Pets
💙 Esoteric Programming Languages
☸ Kubernetes Release Team
🤔 Stoic
© 2019 InfluxData. All rights reserved.3
© 2019 InfluxData. All rights reserved.4
Introduction Demo
© 2019 InfluxData. All rights reserved.5
Telegraf is plugin based
© 2019 InfluxData. All rights reserved.6 © 2019 InfluxData. All rights reserved.6
Over 200 Plugins
➔ 169 Inputs
➔ 35 Outputs
➔ 15 Processors
➔ 14 Parsers
➔ 9 Serializers
➔ 8 Aggregators
© 2019 InfluxData. All rights reserved.7
➔ Outputs
◆ Google Cloud PubSub
➔ Serializers
◆ Nowmetric
◆ Carbon2
V1.10 (May)
➔ Inputs
◆ Google Cloud PubSub
◆ Kinesis Consumer
◆ Kube Inventory
◆ Neptune Apex
◆ Nginx Upstream Checks
◆ Multifile
◆ Stack Driver
© 2019 InfluxData. All rights reserved.8
➔ Outputs
◆ Health
◆ Syslog
➔ Serializers
◆ Wavefront
➔ Aggregators
◆ Final
V1.11 (June)
➔ Inputs
◆ bind9
◆ Cisco GNMI
◆ Cisco MDT
◆ ECS & Fargate
◆ GitHub
◆ OpenWeatherMap
◆ PowerDNS
© 2019 InfluxData. All rights reserved.9
V1.12 (September)
➔ Inputs
◆ apcupsd
◆ Docker Logs
◆ Fireboard
◆ Logstash
◆ MarkLogic
◆ OpenNTPD
◆ uWSGI
➔ Outputs
◆ Exec
➔ Parsers
◆ Form
➔ Processors
◆ Date
◆ Pivot
◆ Unpivot
◆ Tag Limit
© 2019 InfluxData. All rights reserved.10
© 2019 InfluxData. All rights reserved.11
There are 3249 telegraf.conf
files on GitHub
© 2019 InfluxData. All rights reserved.12
© 2019 InfluxData. All rights reserved.13
I used a sample of 1000
telegraf.conf files from GitHub
© 2019 InfluxData. All rights reserved.14 © 2019 InfluxData. All rights reserved.14
Output Plugins
➔ 72% InfluxDB
➔ 5% File
➔ 2% Prometheus Client
➔ .9% Graphite
➔ .6% Kafka
© 2019 InfluxData. All rights reserved.15
Interval
73% Use 10s (Default)
5.6% use 1s
4% use 5s
2% use 1m
1% use 30s
© 2019 InfluxData. All rights reserved.16
Round
Interval
90% True
© 2019 InfluxData. All rights reserved.17
Jitter 90% None
© 2019 InfluxData. All rights reserved.18
Omit
Hostname
90% False
© 2019 InfluxData. All rights reserved.19 © 2019 InfluxData. All rights reserved.19
Output Plugins
➔ 71% 1 Output
➔ 5% 2 Outputs
➔ 2% 0 Outputs
➔ .6% 3 Outputs
© 2019 InfluxData. All rights reserved.20 © 2019 InfluxData. All rights reserved.20
Input Plugins
➔ 17% 1 Input
➔ 12% 9 Inputs
➔ 10% 8 Inputs
➔ 5% 10 Inputs
➔ 5% 11 Inputs
➔ 5% 6 Inputs
➔ 5% 7 Inputs
➔ 1 56 Inputs ?!?!
© 2019 InfluxData. All rights reserved.21 © 2019 InfluxData. All rights reserved.21
Input Plugins
➔ 58% CPU
➔ 53% Mem
➔ 52% Disk
➔ 51% System
➔ 47% DiskIO
➔ 47% Swap
➔ 40% Process
➔ 31% Kernel
➔ 28% Docker
➔ 23% Net
© 2019 InfluxData. All rights reserved.22
Multiple Outputs
© 2019 InfluxData. All rights reserved.23 © 2019 InfluxData. All rights reserved.23
Multiple Outputs
[[outputs.influxdb]]
urls = ["http://influxdb:8086"]
[[outputs.influxdb_v2]]
urls = ["http://influxdb2:9999"]
© 2019 InfluxData. All rights reserved.24
Remote Configuration
© 2019 InfluxData. All rights reserved.25 © 2019 InfluxData. All rights reserved.25
Remote Configuration
telegraf --config <http_uri>
© 2019 InfluxData. All rights reserved.26 © 2019 InfluxData. All rights reserved.26
Remote Configuration
telegraf --config
https://raw.githubusercontent.com
/influxdata/telegraf/master/etc/telegraf.conf
© 2019 InfluxData. All rights reserved.27 © 2019 InfluxData. All rights reserved.27
Remote Configuration
SOME_VAR=abc123 telegraf --config <http_uri>
© 2019 InfluxData. All rights reserved.28 © 2019 InfluxData. All rights reserved.28
Remote Configuration
[agent]
interval = “${INTERVAL}”
[[outputs.influxdb_v2]]
token = “${TOKEN}”
© 2019 InfluxData. All rights reserved.29
Output Resiliency
© 2019 InfluxData. All rights reserved.30 © 2019 InfluxData. All rights reserved.30
Output Resiliency
Use
metric_buffer_limit
to handle downtime of your outputs
© 2019 InfluxData. All rights reserved.31
InfluxDB
Telegraf
Application
Software
Dependencies
Bare Metal
/
VMs
Network
Buffer Batch
© 2019 InfluxData. All rights reserved.32
Telegraf
Application
Software
Dependencies
Bare Metal
/
VMs
Network
Buffer Batch
© 2019 InfluxData. All rights reserved.33
InfluxDB
Telegraf
Application
Software
Dependencies
Bare Metal
/
VMs
Network
Buffer Batch
© 2019 InfluxData. All rights reserved.34 © 2019 InfluxData. All rights reserved.34
Output Resiliency
influxdb_listener
http_listener
© 2019 InfluxData. All rights reserved.35 © 2019 InfluxData. All rights reserved.35
influxdb_listener
Allows Telegraf to serve as a proxy for the /write endpoint of the
InfluxDB HTTP API.
Output Resiliency
© 2019 InfluxData. All rights reserved.36
influxdb_listener
[[inputs.influxdb_listener]]
service_address = ":8086"
© 2019 InfluxData. All rights reserved.37
© 2019 InfluxData. All rights reserved.38
v1 Client Libraries
© 2019 InfluxData. All rights reserved.39
http_listener_v2
Allows Telegraf to accept metrics over HTTP in any supported
format
Output Resiliency
© 2019 InfluxData. All rights reserved.40
http_listener_v2
[[inputs.http_listener_v2]]
service_address = ":8080"
data_format = "json"
© 2019 InfluxData. All rights reserved.41
JSON
[[inputs.http_listener_v2]]
data_format = "json"
json_name_key = "name"
tag_keys = [“go_version”]
Docs
© 2019 InfluxData. All rights reserved.42
Bring Your Own Telegraf
© 2019 InfluxData. All rights reserved.43
Plugins come at a cost
© 2019 InfluxData. All rights reserved.44
➜ docker image ls
byot-sample 15.2MB
telegraf 254MB
© 2019 InfluxData. All rights reserved.45 © 2019 InfluxData. All rights reserved.45
Bring Your Own Telegraf
FROM rawkode/telegraf:byo AS build
FROM alpine:3.7 AS telegraf
COPY --from=build /etc/telegraf /etc/telegraf
COPY --from=build /binary /bin/telegraf
ENTRYPOINT [ "/bin/telegraf" ]
© 2019 InfluxData. All rights reserved.46 © 2019 InfluxData. All rights reserved.46
Bring Your Own Telegraf
BYOT
BYOT Example
Click Me! Click Me!
© 2019 InfluxData. All rights reserved.47
InfluxDB
Telegraf
Application
Software
Dependencies
Bare Metal
/
VMs
Network
Buffer Batch
© 2019 InfluxData. All rights reserved.48
InfluxDB
Application
Software
Dependencies
Bare Metal
/
VMs
Network
Telegraf
Telegraf
Telegraf
Telegraf
© 2019 InfluxData. All rights reserved.49
Internal
© 2019 InfluxData. All rights reserved.50
Internal
➔ Keep an eye on buffer_size
➔ Make sure you alert on metrics_dropped
© 2019 InfluxData. All rights reserved.51
Health Output
© 2019 InfluxData. All rights reserved.52
@app.route("/health")
def healthcheck():
return "OK”
© 2019 InfluxData. All rights reserved.53
@app.route("/health")
def healthcheck():
return "OK”
© 2019 InfluxData. All rights reserved.54 © 2019 InfluxData. All rights reserved.54
Health Output
[[outputs.health]]
service_address = "http://:5559"
namepass = ["web-metrics"]
[[outputs.health.compares]]
field = "response_time"
lt = 0.300
© 2019 InfluxData. All rights reserved.55
Kafka In, Kafka Out
© 2019 InfluxData. All rights reserved.56
InfluxDB
Application
Software
Dependencies
Bare Metal
/
VMs
Network
Telegraf
Telegraf
Telegraf
Telegraf
Kafka
Telegraf
Telegraf
© 2019 InfluxData. All rights reserved.57
Serverless?
© 2019 InfluxData. All rights reserved.58
Demo
© 2019 InfluxData. All rights reserved.59
We’ve covered less than 10 of the
200 plugins
https://speakerdeck.com/rawkode
https://github.com/rawkode/influxdb-examples
@rawkode

Weitere ähnliche Inhalte

Ähnlich wie OSMC 2019 | The Telegraf Toolbelt: It Can Do That, Really? by David McKay

How to Use Telegraf and Its Plugin Ecosystem
How to Use Telegraf and Its Plugin EcosystemHow to Use Telegraf and Its Plugin Ecosystem
How to Use Telegraf and Its Plugin EcosystemInfluxData
 
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808Cisco DevNet
 
Integrated, Automated Video Room Systems - Webex Devices - Cisco Live Orlando...
Integrated, Automated Video Room Systems - Webex Devices - Cisco Live Orlando...Integrated, Automated Video Room Systems - Webex Devices - Cisco Live Orlando...
Integrated, Automated Video Room Systems - Webex Devices - Cisco Live Orlando...Cisco DevNet
 
Building Your Data Streams for all the IoT
Building Your Data Streams for all the IoTBuilding Your Data Streams for all the IoT
Building Your Data Streams for all the IoTDevOps.com
 
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...InfluxData
 
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019Cisco DevNet
 
Write your own telegraf plugin
Write your own telegraf pluginWrite your own telegraf plugin
Write your own telegraf pluginInfluxData
 
Taming the Tiger: Tips and Tricks for Using Telegraf
Taming the Tiger: Tips and Tricks for Using TelegrafTaming the Tiger: Tips and Tricks for Using Telegraf
Taming the Tiger: Tips and Tricks for Using TelegrafInfluxData
 
Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Cisco DevNet
 
Sensor Data in InfluxDB by David Simmons, IoT Developer Evangelist | InfluxData
Sensor Data in InfluxDB by David Simmons, IoT Developer Evangelist | InfluxDataSensor Data in InfluxDB by David Simmons, IoT Developer Evangelist | InfluxData
Sensor Data in InfluxDB by David Simmons, IoT Developer Evangelist | InfluxDataInfluxData
 
Intro to Git Devnet-1080 Cisco Live 2018
Intro to Git Devnet-1080 Cisco Live 2018Intro to Git Devnet-1080 Cisco Live 2018
Intro to Git Devnet-1080 Cisco Live 2018Ashley Roach
 
Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...
Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...
Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...InfluxData
 
Overpowered Kubernetes: CI/CD for K8s on Enterprise IaaS
Overpowered Kubernetes: CI/CD for K8s on Enterprise IaaSOverpowered Kubernetes: CI/CD for K8s on Enterprise IaaS
Overpowered Kubernetes: CI/CD for K8s on Enterprise IaaSJ On The Beach
 
CloudNativeAalborg2023_Jan.pdf
CloudNativeAalborg2023_Jan.pdfCloudNativeAalborg2023_Jan.pdf
CloudNativeAalborg2023_Jan.pdfahjensen
 
eXoer on the grill: eXo Add-ons factory using Docker and Codenvy
eXoer on the grill: eXo Add-ons factory using Docker and CodenvyeXoer on the grill: eXo Add-ons factory using Docker and Codenvy
eXoer on the grill: eXo Add-ons factory using Docker and CodenvyeXo Platform
 
Declarative Import with Magento 2 Import Framework (M2IF)
Declarative Import with Magento 2 Import Framework (M2IF)Declarative Import with Magento 2 Import Framework (M2IF)
Declarative Import with Magento 2 Import Framework (M2IF)Tim Wagner
 
Advanced coding & deployment for Cisco Video Devices - CL20B - DEVNET-3244
Advanced coding & deployment for Cisco Video Devices - CL20B - DEVNET-3244Advanced coding & deployment for Cisco Video Devices - CL20B - DEVNET-3244
Advanced coding & deployment for Cisco Video Devices - CL20B - DEVNET-3244Cisco DevNet
 
Meeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningMeeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningCisco DevNet
 
Why Automate the Network?
Why Automate the Network?Why Automate the Network?
Why Automate the Network?Hank Preston
 
Docker and Jenkins [as code]
Docker and Jenkins [as code]Docker and Jenkins [as code]
Docker and Jenkins [as code]Mark Waite
 

Ähnlich wie OSMC 2019 | The Telegraf Toolbelt: It Can Do That, Really? by David McKay (20)

How to Use Telegraf and Its Plugin Ecosystem
How to Use Telegraf and Its Plugin EcosystemHow to Use Telegraf and Its Plugin Ecosystem
How to Use Telegraf and Its Plugin Ecosystem
 
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
 
Integrated, Automated Video Room Systems - Webex Devices - Cisco Live Orlando...
Integrated, Automated Video Room Systems - Webex Devices - Cisco Live Orlando...Integrated, Automated Video Room Systems - Webex Devices - Cisco Live Orlando...
Integrated, Automated Video Room Systems - Webex Devices - Cisco Live Orlando...
 
Building Your Data Streams for all the IoT
Building Your Data Streams for all the IoTBuilding Your Data Streams for all the IoT
Building Your Data Streams for all the IoT
 
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
 
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
 
Write your own telegraf plugin
Write your own telegraf pluginWrite your own telegraf plugin
Write your own telegraf plugin
 
Taming the Tiger: Tips and Tricks for Using Telegraf
Taming the Tiger: Tips and Tricks for Using TelegrafTaming the Tiger: Tips and Tricks for Using Telegraf
Taming the Tiger: Tips and Tricks for Using Telegraf
 
Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?
 
Sensor Data in InfluxDB by David Simmons, IoT Developer Evangelist | InfluxData
Sensor Data in InfluxDB by David Simmons, IoT Developer Evangelist | InfluxDataSensor Data in InfluxDB by David Simmons, IoT Developer Evangelist | InfluxData
Sensor Data in InfluxDB by David Simmons, IoT Developer Evangelist | InfluxData
 
Intro to Git Devnet-1080 Cisco Live 2018
Intro to Git Devnet-1080 Cisco Live 2018Intro to Git Devnet-1080 Cisco Live 2018
Intro to Git Devnet-1080 Cisco Live 2018
 
Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...
Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...
Jess Ingrassellino [InfluxData] | How to Get Data Into InfluxDB | InfluxDays ...
 
Overpowered Kubernetes: CI/CD for K8s on Enterprise IaaS
Overpowered Kubernetes: CI/CD for K8s on Enterprise IaaSOverpowered Kubernetes: CI/CD for K8s on Enterprise IaaS
Overpowered Kubernetes: CI/CD for K8s on Enterprise IaaS
 
CloudNativeAalborg2023_Jan.pdf
CloudNativeAalborg2023_Jan.pdfCloudNativeAalborg2023_Jan.pdf
CloudNativeAalborg2023_Jan.pdf
 
eXoer on the grill: eXo Add-ons factory using Docker and Codenvy
eXoer on the grill: eXo Add-ons factory using Docker and CodenvyeXoer on the grill: eXo Add-ons factory using Docker and Codenvy
eXoer on the grill: eXo Add-ons factory using Docker and Codenvy
 
Declarative Import with Magento 2 Import Framework (M2IF)
Declarative Import with Magento 2 Import Framework (M2IF)Declarative Import with Magento 2 Import Framework (M2IF)
Declarative Import with Magento 2 Import Framework (M2IF)
 
Advanced coding & deployment for Cisco Video Devices - CL20B - DEVNET-3244
Advanced coding & deployment for Cisco Video Devices - CL20B - DEVNET-3244Advanced coding & deployment for Cisco Video Devices - CL20B - DEVNET-3244
Advanced coding & deployment for Cisco Video Devices - CL20B - DEVNET-3244
 
Meeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningMeeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listening
 
Why Automate the Network?
Why Automate the Network?Why Automate the Network?
Why Automate the Network?
 
Docker and Jenkins [as code]
Docker and Jenkins [as code]Docker and Jenkins [as code]
Docker and Jenkins [as code]
 

Kürzlich hochgeladen

Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxalwaysnagaraju26
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...Nitya salvi
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 

Kürzlich hochgeladen (20)

Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 

OSMC 2019 | The Telegraf Toolbelt: It Can Do That, Really? by David McKay

  • 1. The Telegraf Toolbelt It can do that, really?
  • 2. © 2019 InfluxData. All rights reserved.2 David McKay Developer Advocate at InfluxData @rawkode 🏴󠁧󠁢󠁳󠁣󠁴󠁿 Scottish 🐭 Has 9 Pets 💙 Esoteric Programming Languages ☸ Kubernetes Release Team 🤔 Stoic
  • 3. © 2019 InfluxData. All rights reserved.3
  • 4. © 2019 InfluxData. All rights reserved.4 Introduction Demo
  • 5. © 2019 InfluxData. All rights reserved.5 Telegraf is plugin based
  • 6. © 2019 InfluxData. All rights reserved.6 © 2019 InfluxData. All rights reserved.6 Over 200 Plugins ➔ 169 Inputs ➔ 35 Outputs ➔ 15 Processors ➔ 14 Parsers ➔ 9 Serializers ➔ 8 Aggregators
  • 7. © 2019 InfluxData. All rights reserved.7 ➔ Outputs ◆ Google Cloud PubSub ➔ Serializers ◆ Nowmetric ◆ Carbon2 V1.10 (May) ➔ Inputs ◆ Google Cloud PubSub ◆ Kinesis Consumer ◆ Kube Inventory ◆ Neptune Apex ◆ Nginx Upstream Checks ◆ Multifile ◆ Stack Driver
  • 8. © 2019 InfluxData. All rights reserved.8 ➔ Outputs ◆ Health ◆ Syslog ➔ Serializers ◆ Wavefront ➔ Aggregators ◆ Final V1.11 (June) ➔ Inputs ◆ bind9 ◆ Cisco GNMI ◆ Cisco MDT ◆ ECS & Fargate ◆ GitHub ◆ OpenWeatherMap ◆ PowerDNS
  • 9. © 2019 InfluxData. All rights reserved.9 V1.12 (September) ➔ Inputs ◆ apcupsd ◆ Docker Logs ◆ Fireboard ◆ Logstash ◆ MarkLogic ◆ OpenNTPD ◆ uWSGI ➔ Outputs ◆ Exec ➔ Parsers ◆ Form ➔ Processors ◆ Date ◆ Pivot ◆ Unpivot ◆ Tag Limit
  • 10. © 2019 InfluxData. All rights reserved.10
  • 11. © 2019 InfluxData. All rights reserved.11 There are 3249 telegraf.conf files on GitHub
  • 12. © 2019 InfluxData. All rights reserved.12
  • 13. © 2019 InfluxData. All rights reserved.13 I used a sample of 1000 telegraf.conf files from GitHub
  • 14. © 2019 InfluxData. All rights reserved.14 © 2019 InfluxData. All rights reserved.14 Output Plugins ➔ 72% InfluxDB ➔ 5% File ➔ 2% Prometheus Client ➔ .9% Graphite ➔ .6% Kafka
  • 15. © 2019 InfluxData. All rights reserved.15 Interval 73% Use 10s (Default) 5.6% use 1s 4% use 5s 2% use 1m 1% use 30s
  • 16. © 2019 InfluxData. All rights reserved.16 Round Interval 90% True
  • 17. © 2019 InfluxData. All rights reserved.17 Jitter 90% None
  • 18. © 2019 InfluxData. All rights reserved.18 Omit Hostname 90% False
  • 19. © 2019 InfluxData. All rights reserved.19 © 2019 InfluxData. All rights reserved.19 Output Plugins ➔ 71% 1 Output ➔ 5% 2 Outputs ➔ 2% 0 Outputs ➔ .6% 3 Outputs
  • 20. © 2019 InfluxData. All rights reserved.20 © 2019 InfluxData. All rights reserved.20 Input Plugins ➔ 17% 1 Input ➔ 12% 9 Inputs ➔ 10% 8 Inputs ➔ 5% 10 Inputs ➔ 5% 11 Inputs ➔ 5% 6 Inputs ➔ 5% 7 Inputs ➔ 1 56 Inputs ?!?!
  • 21. © 2019 InfluxData. All rights reserved.21 © 2019 InfluxData. All rights reserved.21 Input Plugins ➔ 58% CPU ➔ 53% Mem ➔ 52% Disk ➔ 51% System ➔ 47% DiskIO ➔ 47% Swap ➔ 40% Process ➔ 31% Kernel ➔ 28% Docker ➔ 23% Net
  • 22. © 2019 InfluxData. All rights reserved.22 Multiple Outputs
  • 23. © 2019 InfluxData. All rights reserved.23 © 2019 InfluxData. All rights reserved.23 Multiple Outputs [[outputs.influxdb]] urls = ["http://influxdb:8086"] [[outputs.influxdb_v2]] urls = ["http://influxdb2:9999"]
  • 24. © 2019 InfluxData. All rights reserved.24 Remote Configuration
  • 25. © 2019 InfluxData. All rights reserved.25 © 2019 InfluxData. All rights reserved.25 Remote Configuration telegraf --config <http_uri>
  • 26. © 2019 InfluxData. All rights reserved.26 © 2019 InfluxData. All rights reserved.26 Remote Configuration telegraf --config https://raw.githubusercontent.com /influxdata/telegraf/master/etc/telegraf.conf
  • 27. © 2019 InfluxData. All rights reserved.27 © 2019 InfluxData. All rights reserved.27 Remote Configuration SOME_VAR=abc123 telegraf --config <http_uri>
  • 28. © 2019 InfluxData. All rights reserved.28 © 2019 InfluxData. All rights reserved.28 Remote Configuration [agent] interval = “${INTERVAL}” [[outputs.influxdb_v2]] token = “${TOKEN}”
  • 29. © 2019 InfluxData. All rights reserved.29 Output Resiliency
  • 30. © 2019 InfluxData. All rights reserved.30 © 2019 InfluxData. All rights reserved.30 Output Resiliency Use metric_buffer_limit to handle downtime of your outputs
  • 31. © 2019 InfluxData. All rights reserved.31 InfluxDB Telegraf Application Software Dependencies Bare Metal / VMs Network Buffer Batch
  • 32. © 2019 InfluxData. All rights reserved.32 Telegraf Application Software Dependencies Bare Metal / VMs Network Buffer Batch
  • 33. © 2019 InfluxData. All rights reserved.33 InfluxDB Telegraf Application Software Dependencies Bare Metal / VMs Network Buffer Batch
  • 34. © 2019 InfluxData. All rights reserved.34 © 2019 InfluxData. All rights reserved.34 Output Resiliency influxdb_listener http_listener
  • 35. © 2019 InfluxData. All rights reserved.35 © 2019 InfluxData. All rights reserved.35 influxdb_listener Allows Telegraf to serve as a proxy for the /write endpoint of the InfluxDB HTTP API. Output Resiliency
  • 36. © 2019 InfluxData. All rights reserved.36 influxdb_listener [[inputs.influxdb_listener]] service_address = ":8086"
  • 37. © 2019 InfluxData. All rights reserved.37
  • 38. © 2019 InfluxData. All rights reserved.38 v1 Client Libraries
  • 39. © 2019 InfluxData. All rights reserved.39 http_listener_v2 Allows Telegraf to accept metrics over HTTP in any supported format Output Resiliency
  • 40. © 2019 InfluxData. All rights reserved.40 http_listener_v2 [[inputs.http_listener_v2]] service_address = ":8080" data_format = "json"
  • 41. © 2019 InfluxData. All rights reserved.41 JSON [[inputs.http_listener_v2]] data_format = "json" json_name_key = "name" tag_keys = [“go_version”] Docs
  • 42. © 2019 InfluxData. All rights reserved.42 Bring Your Own Telegraf
  • 43. © 2019 InfluxData. All rights reserved.43 Plugins come at a cost
  • 44. © 2019 InfluxData. All rights reserved.44 ➜ docker image ls byot-sample 15.2MB telegraf 254MB
  • 45. © 2019 InfluxData. All rights reserved.45 © 2019 InfluxData. All rights reserved.45 Bring Your Own Telegraf FROM rawkode/telegraf:byo AS build FROM alpine:3.7 AS telegraf COPY --from=build /etc/telegraf /etc/telegraf COPY --from=build /binary /bin/telegraf ENTRYPOINT [ "/bin/telegraf" ]
  • 46. © 2019 InfluxData. All rights reserved.46 © 2019 InfluxData. All rights reserved.46 Bring Your Own Telegraf BYOT BYOT Example Click Me! Click Me!
  • 47. © 2019 InfluxData. All rights reserved.47 InfluxDB Telegraf Application Software Dependencies Bare Metal / VMs Network Buffer Batch
  • 48. © 2019 InfluxData. All rights reserved.48 InfluxDB Application Software Dependencies Bare Metal / VMs Network Telegraf Telegraf Telegraf Telegraf
  • 49. © 2019 InfluxData. All rights reserved.49 Internal
  • 50. © 2019 InfluxData. All rights reserved.50 Internal ➔ Keep an eye on buffer_size ➔ Make sure you alert on metrics_dropped
  • 51. © 2019 InfluxData. All rights reserved.51 Health Output
  • 52. © 2019 InfluxData. All rights reserved.52 @app.route("/health") def healthcheck(): return "OK”
  • 53. © 2019 InfluxData. All rights reserved.53 @app.route("/health") def healthcheck(): return "OK”
  • 54. © 2019 InfluxData. All rights reserved.54 © 2019 InfluxData. All rights reserved.54 Health Output [[outputs.health]] service_address = "http://:5559" namepass = ["web-metrics"] [[outputs.health.compares]] field = "response_time" lt = 0.300
  • 55. © 2019 InfluxData. All rights reserved.55 Kafka In, Kafka Out
  • 56. © 2019 InfluxData. All rights reserved.56 InfluxDB Application Software Dependencies Bare Metal / VMs Network Telegraf Telegraf Telegraf Telegraf Kafka Telegraf Telegraf
  • 57. © 2019 InfluxData. All rights reserved.57 Serverless?
  • 58. © 2019 InfluxData. All rights reserved.58 Demo
  • 59. © 2019 InfluxData. All rights reserved.59 We’ve covered less than 10 of the 200 plugins