How do you collect telemetry data, which KPIs should you set, and how to automate telemetry end-to-end
Running your business without data is like flying blindfolded. You might get lucky or you might crash without warning.
Telemetry can help you spot issues before they develop and hurt your bottom line.
In this article, we’ll dive deep into what telemetry is, how to set it up (with best practices and common pitfalls to avoid), and equip you with the tools to automate it.
What is telemetry?
Telemetry systems monitor the performance of remote components.
When you have multiple components that are physically in distinct locations, each component produces telemetry data about its performance locally and transmits data from the remote sources to a central telemetry system for monitoring.
“Telemetering” and “transmission of data” might sound a bit abstract. But in fact, the overall idea is very clear when looking at a couple of examples.
What are examples of telemetry?
Telemetry is used in multiple industries to monitor the performance of remote sources:
Agriculture: meteorological data is collected from multiple weather balloons to quickly spot weather trends that could ruin crops.
Telecommunication: telephone lines are equipped with Internet of Things (IoT) sensors that send data wirelessly or via radio telemetry to inform of the status of the telephone lines. Telecommunication companies can quickly spot if a telephone pole or line is down via the data received.
Healthcare: ICU patients are connected to medical devices that continuously report in real-time their heart rate and blood pressure. In case the health metrics get to a critical level, the devices send alarms to medical professionals who intervene to help the patients.
Digital advertising: check that your ads are up and running on Facebook Ads, Google Ads, and Linkedin Ads. Sometimes advertising campaigns get stopped and you need to review them before they can run again. Similarly, make sure your pricing policies are within budgets and campaigns are not running astray.
Software development: Irrespective of whether you host your app on-premises or rely on cloud providers (like AWS) DevOps measures metrics to assure your app is running as intended: CPU over-utilization (increased costs) and under-utilization (potential software bugs), routing issues, security breaches, computer network bandwidth utilization, frequency of database requests, etc.
… and many more.
Telemetry is present across so many industries - but why would we need it?
Why would you need telemetry?
Telemetry data offers many benefits and solves many problems:
Performance overview. Telemetry can give you the confidence that your operations are on the right track. Metrics such as average server uptime, number of completed transactions, CPU utilization, and others can give you confidence that the ship you’re running is airtight.
Early alarm. In case something goes wrong, telemetry data can quickly showcase the source of the problem before you get client complaints.
Debug issues. Telemetry data is often rich with information about what error happened and how it affected your performance. This helps you with root cause analysis and troubleshooting. Well-organized telemetry data can increase your response time to problems.
To rip the benefits of telemetry, you need to make sure to set up your telemetry data collection, cleaning, and reporting correctly.
Start modeling data at no cost. Create a forever free account and put your knowledge into practice.
Before you start extracting data from remote sources, you need to figure out which telemetry data is needed by defining business metrics and KPIs that are translated into a data collection plan.
What metrics and KPIs should you track with telemetry data?
All business metrics and KPIs help you improve decision-making.
When setting up metrics and KPIs for telemetry data, make sure to build metrics by these four principles
Baseline metric. The baseline can either be the average performance of your telemetrically collected data or a business baseline (e.g., Service Level Agreement of your software uptime).
Deviation from the baseline. To understand if performance is on the right track, you need to calculate how the current metric deviates from the baseline. Some variability is expected, so make sure to calculate metrics
Metric trends through time. To spot trends of improving or derailing performance, you need aggregate metrics. The best way to aggregate metrics is to calculate the baseline and deviation through time.
Metric trends by segments.
How would this arrangement look in practice? Let’s look at an example of an e-commerce shop you run:
Now it’s time to collect the data.
Where to get telemetry data?
You might be wondering where you can find telemetry data for the tools and processes you use.
Luckily, the majority of modern software provides telemetry data out of the box (or can be found in some hidden logs if you dig into it).
PostgreSQL and other databases automatically generate and save statistics on performance (check the docs).
Amazon Web Services (AWS) offers telemetry as a service, both as open source (do it yourself) and as a managed service (pay for it) - check the options here. Other cloud providers, server hosting providers, and even your own servers (Apache Server as an example) can do the same.
Facebook Ads and other advertising platforms offer a myriad of tools for monitoring (learn more).
Beware, though, getting telemetry data can also become very complicated. These are the common challenges to keep in mind:
No telemetry data is generated in the tool. Not all apps and hardware you use offer telemetry out of the box. Sometimes, you’ll need to build a data generator yourself. The complexity varies - from adding a line of code to your app to log an event to designing and manufacturing PCB chips for your sensors.
Telemetry data is malformatted. Telemetry data is often generated as a log of text. Not as ready-to-consume information. Oftentimes, you will have to transform the data, not just collect it. For instance, you might need to write a custom parser that reads the telemetry logs and extracts the information you need.
What to do with telemetry data once it’s collected?
Run a 100% data-driven business without any extra hassle. Pay as you go, starting with our free tier.
Telemetry works for you if you apply telemetry to your business practices. To do that:
Build dashboards and other BI reports that collect all telemetry data (baselines, deviations, aggregate metrics through time and broken down by segments) in one place so you can keep a finger on your business’ pulse.
Monitor regularly. Make sure to regularly check dashboards. The best way to do it is to lower the friction of monitoring. This can include sharing reports with a wider team or even company and building up processes that go over monitoring (e.g., check the metrics on your daily stand-ups).
Set up alerts. For business-critical telemetry data, set up alerts that ping you when something goes wrong. For example, when your server uptime falls by more than 1% as agreed in your SLA.
Automate. Automate telemetry data collection from remote sources, cleaning (parsing), loading, and visualizing end-to-end with devoted tools. This is especially important for data that you need in real-time - ad hoc data collections will not work in this case, you need continuous data streams.
One of the biggest challenges when driving impact with telemetry data is the groundwork needed to combine telemetry from all the different systems.
For example, databases have their own monitoring data that you need to extract, cloud providers format and save data differently than databases, advertising platforms open telemetry via APIs, etc.
Some open source tools can help you, such as Prometheus and Grafana, but they require a lot of work. Instead, make your life easier with devoted telemetry tools.
Choose the right tool for telemetry
Keboola can help you take control of your telemetry data and use it to drive company-wide impact.
At its core, Keboola is a Data Stack as a Service platform. It automates and simplifies all data operations: including data engineering, DataOps, and data analytics.
Keboola offers more than 200+ connectors that help you collect data from various remote sources (from databases to data lakes on cloud providers, from advertising platforms to sensors).
With its Transformations, you can easily build parsers or clean telemetry data in Python, SQL, R, Julia, or another language of your choice.
Keboola also integrates seamlessly with BI tools such as Looker, Power BI, Tableau, and many more. Allowing you to visualize telemetry data and keep track of your app's performance.
Set up alerts via Keboola and send them directly to Slack or other communication devices.
Finally, Keboola is built for automation. So you can simply schedule and orchestrate all your jobs from Keboola, and run entire pipelines automatically - Keboola will collect, clean, and load telemetry data into your reports, without you needing to do the heavy lifting.
Building these pipelines in Keboola gives you many advantages - since it is universally compatible with the wide ecosystem of data stacks, you can use Keboola as a single solution for all your telemetry data.
Moreover, you can also keep track of Keboola’s own inner workings - with the Telemetry Data Component, you can collect information about how Keboola is performing all your telemetry operations.