A blogpost feature image with a blue background and a foto of a hallway with a shiny tiled floor. We see 5 closed doors at the far end. One door is colored yellow while 4 are white Underneath we see the title in bright green letters "Beyond the walls - Understanding and overcoming Observability vendor lock-in"

The topic of vendor lock-in often surfaces in discussions surrounding OpenTelemetry. It’s almost presented as the ultimate antidote, the key to unlocking ourselves from the proprietary embrace of a single observability provider. The premise is clear: being locked into one vendor’s solution limits our choices and hinders our ability to adapt. But is vendor lock-in always the villain in our observability narrative? Let’s delve deeper.

The grip of proprietary systems

The fear of vendor lock-in is rooted in valid concerns. Imagine wanting to adopt a cutting-edge technology for monitoring, only to find your current vendor doesn’t support it and has no immediate plans to do so. You’re stuck, unable to gain crucial insights into a vital part of your infrastructure. Similarly, the frustration of wanting to switch vendors, perhaps due to cost or superior features elsewhere, only to discover that your entire observability setup is deeply intertwined with their proprietary technologies, is a real pain point. This technological inertia can feel like a deliberate constraint, even if it often stems from the inherent complexities of building comprehensive monitoring solutions.

The technological roots of lock-in

However, the reality of vendor lock-in isn’t always a tale of malicious intent. Often, it’s a byproduct of the intricate technology involved. Consider the early days of APM. Vendors invested significant development effort in creating the instrumentation that allowed us to peer into our applications. Crafting trace propagation across the myriad of HTTP frameworks in languages like Java, each with its subtle implementation differences, was a substantial undertaking. Each vendor, in essence, built their own unique plumbing. They developed proprietary agents, context propagation mechanisms, and data correlation techniques, often because there were no established standards. While JVM Tools Interface (JVMTI) in Java offered code manipulation capabilities, the how – the configuration, the propagation – varied wildly. When a new, groundbreaking framework emerged, vendors faced a significant investment to build the necessary instrumentation just to collect the raw data, diverting resources from the higher-value task of analyzing and presenting that information.

The trade-off: Convenience vs. flexibility

In many ways, vendor lock-in can be viewed as a trade-off. As a customer, I might have willingly exchanged the time and effort required to build intricate trace propagation and instrumentation points for the convenience of a vendor-provided solution. In return for my subscription, I gained immediate monitoring capabilities. This exchange works well, until the technology I’m using diverges significantly from what my vendor can readily support. History shows us that APM vendors haven’t always been able to keep pace with the rapid evolution of the tech landscape, particularly with the advent of microservices, containers, and Kubernetes, which demanded entirely new approaches to data collection and storage. Many early APM solutions, reliant on relational databases (ideal for metrics, less so for logs, and generally unsuitable for the flexible querying of traces), struggled to adapt to the dynamic nature of these new architectures. Observability vendors who embraced NoSQL and columnar databases like ClickHouse, Cassandra, or Elasticsearch gained a significant advantage in handling the demands of modern observability data.

OpenTelemetry: A path to freedom?

If vendor lock-in stems partly from proprietary instrumentation and data handling, then OpenTelemetry presents a compelling alternative. By standardizing the collection and transport of telemetry data, OpenTelemetry shifts the burden of instrumentation. Ideally, framework maintainers themselves instrument their projects, as seen with Spring Boot and commercial open-source solutions like Shopify. This “do-it-yourself” or rather, “community-driven” approach offers significant advantages. We are less reliant on individual vendors to constantly play catch-up with the latest technologies.

However, this freedom comes with responsibility. OpenTelemetry is a framework and toolkit, not a ready-to-use product. While it offers immense control and flexibility, the onus of implementation, configuration, and even troubleshooting falls on the user or the maintainers of the instrumented frameworks. You lose the single point of contact for support and the ability to directly hold a vendor accountable if something doesn’t work as expected.

The vendor’s evolving role

OpenTelemetry allows vendors to refocus their efforts on their core strengths: the information layer. Instead of dedicating a significant portion of their development time to building and maintaining basic instrumentation, they can concentrate on creating powerful tools for analyzing, visualizing, and deriving insights from the standardized data provided by OpenTelemetry. If framework maintainers handle the instrumentation, vendors can truly excel at what we need most: extracting meaningful information from the vast amounts of telemetry data.

Summary

In conclusion, vendor lock-in in Observability is a complex issue, often rooted in the technological challenges of building comprehensive solutions. While it presents genuine limitations, it can also be seen as a historical trade-off for convenience. OpenTelemetry offers a promising path towards greater freedom and interoperability, but it also introduces a shift in responsibility. Ultimately, the ideal scenario is one where standardized data collection empowers vendors to focus on delivering truly valuable insights, allowing us to choose the best tools for the job without the fear of being permanently trapped in a proprietary maze.


Like it? Share it!

The post

Beyond the walls: Understanding and overcoming Observability vendor lock-in

was published first on observability-heroes.com

Written by 

with lots of ❤️ for O11y


Leave a Reply

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

Wir benutzen Cookies um die Nutzerfreundlichkeit der Webseite zu verbessen. Durch Deinen Besuch stimmst Du dem zu.