The latest News and Information on Distributed Tracing and related technologies.
OpenTelemetry is a free and open-source software initiative with the objective of supplying software developers with the means to create distributed systems. OpenTelemetry was developed by engineers at Google, and developers have the ability to utilize it to create a standard foundation for the construction of distributed systems. The goal is to enable developers to write code once and then deploy it in any location of their choosing.
OpenTelemetry is a collection of tools and APIs for collecting, processing, and exporting telemetry data from software. It is used to instrument applications for performance monitoring, logging, tracking, tracing, and other observability purposes. What is Telemetry? The word is derived from the Greek “tele” meaning “remote,” and metron meaning “measure.” So, it’s the collection of metrics and their automatic to a receiver for monitoring.
The scenario: you want to see distributed traces, maybe for your web app. You’ve set up an OpenTelemetry collector to receive OTLP traces in JSON over HTTP, and send those to Honeycomb (how to do that is another post, and we’ll link it here when it’s up).
Cloud native and microservice architectures bring many advantages in terms of performance, scalability, and reliability, but one thing they can also bring is complexity. Having requests move between services can make debugging much more challenging and many of the past rules for monitoring applications don’t work well. This is made even more difficult by the fact that cloud services are inherently ephemeral, with containers constantly being spun up and spun down.
Systems and applications alike have become progressively distributed as microservices, open-source tools, and containerisation have gained traction. In order to actively monitor and respond quickly to issues that arise in our environment, distributed tracing has proven to be vital for businesses such as Uber, Postmates, Hello Fresh and TransferWise. It is, however, important to clarify what distributed tracing actually means.