Closed Observability Tools Are Harmful
As engineers, it's painful to have to learn how to use new closed source tools when switching jobs. Rather than learning open source tooling, we're wasting our time learning how to closed source platforms, often with predatory pricing, that come and go as a result.
In this post I'll lay out these two problems along with some examples and discuss some potential solutions.
Observability is an important part of successfully running systems. Monitoring, alerting, logging, and tracing are necessary to observe the health of your systems and debug problems.
A plethora of cloud based SaaS solutions and open source tools exist to solve this problem. A couple of the more popular ones are NewRelic and DataDog, which are closed source cloud based SaaS solutions. Grafana and Prometheus are popular open source tools that form a core of a much larger ecosystem.
A Note on Quality
This post more or less ignores the quality of these different tools. Each has pros and cons. There will be scenarios where a closed source tool run by a company does something that the open source tools don't, those aren't the type of scenarios being referred to in this post.
For the most part these tools are equivalent in terms of what they are capable of. Some of them have good user interfaces and even open source components.
There are two main problems with this state of affairs. The first problem is that we are constantly learning how to use new platforms that by themselves do not add much value in terms of transferable skills.
The second problem is the predatory pricing that is often used by these companies, causing them to increase and decrease in popularity, which then feeds into the first problem in so that learning these new tools becomes a bad time investment, since they never seem to be popular for long.
More Platforms to Learn
As a software engineer I have to learn how to use these platforms. These platforms are normally quite big and complex and require you to learn how to find the information you need as well as how to create new monitors, dashboards, and whatever else you might need.
The same problem exists for systems engineers (SREs, DevOps, etc.) whose job is often even more tightly coupled to these tools.
Every time an engineer changes jobs, or sometimes even departments, they must take the time to learn one of these tools, unless you're lucky enough for your new job to use the same platform as one of your previous ones.
A common theme I've noticed over the years is that these platforms start out as small companies with a good product and reasonable pricing. As usual, when the investor money runs out and profitability becomes a priority, the prices go up.
These companies are in a fantastic position, since they are closed platforms, and migrating everything to another equivalent platform or tool is too much work to be feasible. This is the essence of vendor lock-in.
As a result, their clients often tolerate the price increases and just stick with the platform they have. However, this will massively influence the popularity of these companies. Once a company increases its price in such a way, its popularity will fall for new projects, with a newer competitor becoming the flavour of the month (year).
NewRelic is a great example of this. It was massively popular some years ago, nowadays I rarely see new projects use it. DataDog is much more popular nowadays, however, people are increasingly complaining about their prices being outrageous.
These monitoring tools and platforms are a bit of an odd one out in our industry, along with cloud hosting platforms.
We mostly rely on open source tooling and most engineers highly value FOSS software. However, when it comes to these tools, a lot of us use one of these proprietary options.
I think one of the reasons for this is that self hosting your own setup is not time efficient enough for most companies. It's easier to throw money at the problem, than engineer time. Hiring is usually a bigger bottleneck than money.
That said, Grafana Labs have an excellent cloud based SaaS solution, using only the open source tooling they build. I'm not entirely sure why I don't see this more often in the wild and I think it's a pity.
While it's true they could effectively have the same predatory pricing behaviour, at least you have the option to move to a self hosted setup with exactly the same tooling, should you choose to do so.
As an engineer I'd much rather invest time in properly learning these open source offerings, that have been around for a long time and will most likely continue to be around for a long time, in addition to all the other benefits from them being FOSS.
As an industry, perhaps it would also make more sense to invest more into improving these tools to make them easier to self host, rather than pouring resources into these closed platforms?
In this post we covered the problem of closed source observability platforms being harmful because engineers have to learn how to use these different platforms frequently and these platforms fluctuate a lot in popularity, driven by predatory price increases and vendor lock-in.
We then cover the open source alternative to these closed platforms and the advantages of using them in the long term while posing the question of why this is the current state of our industry.