mbbroberg / what-we-talk-about-when-we-talk-about-telemetry

A shared attempt to differentiate telemetry tools. I hope you'll help.
GNU General Public License v3.0
0 stars 0 forks source link

what we talk about when we talk about telemetry

The goal of this repository is to have a shared definition of telemetry. By working on a common vocabulary, we can then differentiate tools in an unbiased way. I hope you'll help.

What is Telemetry?

My working definition: Telemetry captures data from multiple sources, aggregates it, and publishes it in a consumable format. What happens after you collect and publish the information is beyond the scope of telemetry.

Parts of Telemetry Frameworks

This gets tricky. I can only start with what I'm curious about, which includes:

Comparison

Telemetry frameworks are often conflated with entire monitoring solutions. I would like to clarity the differences. To do so, I'm going to focus on only the telemetry portion of lots of tools.

Overview

Tools Release Status Collection Model Written In API
Snap Beta (0.17.0) Pull Go Yes
collectd Released (5.5) Pull C No
Bosun's scollector Beta (0.5.0) Pull Go Yes
OpenTSDB's tcollector Released (1.3) Pull Python Yes
diamond Released (4.0) Pull Python Yes?
Telegraf Released (1.0 Pull Go No?
statsd Beta (0.8.0) Push JavaScript Yes
Ceilometer Released (7.0.0) Pull Python Yes
cAdvisor Beta (0.24) Pull Go Yes
Elastic's metricbeats Alpha (6.0.0) Pull Go No?
metricsd None Pull Go No

I will focus only on projects that have public releases from this point forward.

About Collecting and Publishing

The core functionality of telemetry frameworks.

Tools Default Interval Custom Interval? Multiple Intervals? Collect from multiple sources? Able to Process data? Publish to multiple sources?
Snap 1 second :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
collectd 10 seconds :white_check_mark: :x: :white_check_mark: :x:
Bosun's scollector 1 second :white_check_mark:
OpenTSDB's tcollector 15 seconds
Diamond 300 seconds
Telegraf 10 seconds
statsd N/A
Ceilometer 10 minutes
cAdvisor 1 second
Elastic's metricbeats 10 seconds

About Operational Use

The cost of using these tools, from an operations perspective, is important to consider.

About Operational Ease of Use

Tools New metrics New collectors New publishers Version upgrade Config change
Snap No No No Yes Yes
collectd Yes Yes Yes Yes Yes
Bosun's scollector
OpenTSDB's tcollector
Diamond
Telegraf
statsd
Ceilometer
cAdvisor
Elastic's metricbeats

Moar!

The above is a list I'm playing around with. Do you find it helpful? Give it a star to let me know :star: so I know to keep improving it for you. Want to add information? Open a PR following the format above and be sure to support the details with links either in the PR notes or in Notes.md.

Resources

What I made:

That I've reviewed:

That I need to explore: