Telemetry in software What is it and what is it used for?

Telemetry in software

In the wake of the controversy Due to the inclusion of a telemetry tool in Audacitiy, it occurred to me that it would be interestinge to know exactly what it is about and what is the function it fulfills. It is worth mentioning that it is not the first time that the issue has been reduced. It had already happened with VS Code, Microsoft's code editor And, although it is not exactly telemetry, with the data that Unity, the Ubuntu desktop, collected to show relevant results from Amazon

Telemetry in software What is it?

The telemetry tools sand they are in charge of tracking, registering and supervising the infrastructure by observing and analyzing the events generated by the system.

In the case of complex systems (or multiple users running a program on computers with different characteristics) telemetry provides useful information for developers and maintainers that users are not always able to communicate.ar. Telemetry tools are intended to collect, transform, and communicate data on systems performance, functionality, processing speed, errors, and security events of production. They can come in multiple forms, from centralized logging to tracking data tracing through microservices.

It should be mentioned that as the prefix tele indicates, to talk about telemetry in the software, the data has to be sent somewhere, it is not a simple local record of events

Software telemetry features

  • Usage metrics: Measure how, when and how much the product is used. They are basically intended for the commercial sector of the developer as they allow you to measure customer loyalty and product success.
  • Problem detection and diagnosis: Telemetry is used to remotely monitor the operation of the program to understand, solve and prevent problems.
  • Design decision validation: It is known that focus groups are not always a good way to evaluate a product since users, knowing that they are being observed, do not act as they would in a real situation. Using telemetry, developers can know if the design decisions were correct since they receive information without the user being aware.

This all sounds wildly invasive, even though there are strict rules on how that data should be treated. That is why, no matter how annoying it is, you have to read the famous End User Use License.

In general, the telemetry process consists of 5 stages

  1. Determination of metrics: A metric is a measure of performance, for example the amount of usage time without errors. Simple data collection makes no sense if we do not know what we are interested in and what we want it for. Generally, the starting point is a hypothesis (For example, that a program can run for more than 100 hours without errors), a course of action is established in case the hypothesis is validated or denied, and a validity period is set for the metric. A metric can be the result of combining two or more data using a formula.
  2. Instrumentation: In this stage, it is determined what data is relevant for determining the metric and how it will be obtained and transmitted.
  3. Data transmission and storage: Both for the fulfillment of legal requirements and for the protection of the client, it is necessary to determine how and in what form the data will be transmitted. For example, if we are tracking a mobile application, the customer will not appreciate data being sent every 5 minutes using their data plan. The best thing to do would be to collect them locally and wait for the device to be connected to a Wi-Fi network. It is also possible that it is convenient to encrypt them before sending it or to delete information that allows the identification of the client. Once the data has been received, you have to decide how to store it. A good idea is to sample which reduces the amount to save.
  4. Prosecution: In this step, the data is combined to obtain the information that will be useful for decision-making.
  5. Evaluation: In this stage, the information obtained from the processing of the data obtained is analyzed and compared with the hypothesis formulated at the beginning of the procedure. Future courses of action are determined below.

Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: AB Internet Networks 2008 SL
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.

  1.   Excellent said

    Well, it was about time. Excellent article, this is the first time I have seen a decent article of yours, both here and on your old and pathetic personal blog. You're getting the hang of it, that's fine.