To say the parents at VictoriaMetrics aren’t massive followers of OpenTelemetry after implementing its metrics library can be placing it mildly. “OpenTelemetery is so sophisticated and bloated,” stated Aliaksandr Valialkin, the CTO and co-founder of the observability software program firm.
OpenTelemetry is a Cloud Native Computing Basis (CNCF) mission that was created in 2019 to supply an open supply answer to a thorny laptop downside: to create a unified customary for the three most important kinds of observability knowledge, together with traces, metrics, and logs.
With a single customary, the authentic OTel pondering goes, utility builders will acquire entry to higher instruments to correlate several types of observability knowledge with particular servers or digital machines, thereby making it simpler to trace down and repair software program issues. As a bonus, prospects would now not be locked into proprietary IT monitoring options.
OTel was fashioned by the merger of OpenCensus and OpenTracing, so it shouldn’t be shocking that tracing is probably the most mature of the three-pronged mission, with the library tracing delivered in 2021. That was adopted in Could 2022 with the preliminary launch of the metrics functionality, whereas the overall availability of OTel logging was lastly delivered in November 2023.
Many of the IT monitoring trade, in addition to the three cloud giants, have gotten on board the OTel prepare. From established distributors like Splunk and Dynatrace to newer outfits like Elastic and Sumo Logic, supporting OTel has been fashionable throughout the trade.
When a few of VictoriaMetrics’s prospects requested that the corporate add assist for OTel metrics, the corporate obliged. Beneath the steering of CTO Valialkin, VictoriaMetric builders added the OTel metrics library to its providing, which permits customers to gather, shops, and analyze metrics coming from a variety of various methods.
Nevertheless, the combination with OTel metrics didn’t go as deliberate. In response to Valialkin, the addition of the metrics library brought about the VictoriaMetrics binary to extend in dimension by 50%, or a number of hundred megabytes.
“It’s an enormous value for including assist for extra ingestion format, like OpenTelemetry,” Valialkin advised Datanami. “Ultimately, we re-wrote this library from scratch and carried out it mainly solely for VictoriaMetrics. And we’re pleased with the end-result as a result of it elevated the binary dimension by lower than 1%, and that’s a lot better than 50% with the official library for OpenTelemetry.”
The OTel library for metrics is so bloated and inefficient as a result of it tries to do an excessive amount of, in response to Valialkin. It was designed by a committee to deal with the assorted metrics wants of a number of distributors. Nevertheless, the tip product ended up together with a wide range of “edge instances” that VictoriaMetrics prospects will not often, if ever encounter.
Many of the performance included within the OpenTelemtery customary for metrics isn’t really utilized by any distributors or prospects, Valialkin stated. “I feel that most individuals don’t cope with the low-level particulars of the OpenTelemetry protocol,” he stated. “That’s why they aren’t conscious of this difficulty which we confronted when including assist for OpenTelemetry in VictoriaMetrics.”
Briefly, OpenTelemetery for metrics is a “automobile designed by a monkey,” the corporate stated.
“Our ache level was that our try and undertake this customary for metric congestion brought about quite a lot of bother,” stated Roman Khavronenko, a VictoriaMetrics engineer. “It was actually painful to do. It was costly by way of engineering hours. It was costly by way of high quality of code.”
Others have filed comparable compliants. A consumer on Hacker Information final 12 months stated working with OTel was not simple.
“I discover myself having to assume orthogonally to frequent sense at any time when I attempt to use considered one of its SDKs,” wrote consumer iofiiiiiiiii. “Nothing works the way in which you count on it to, all the things has 3 layers of pointless abstraction and must be approached through the again door. Many options have caveats about when it really works, the place it really works, how a lot it really works, throughout what section of the moon it really works and the way lengthy your strings might be when Jupiter is seen within the sky.”
Nevertheless, regardless of the ache, OTel customers nonetheless see the worth of the method. Hacker Information consumer iofiiiiiiiii said that the open supply mission is “a partial win.” “Whereas the developer expertise is fairly disagreeable and I’m additionally upset with the precise each day utilization, from an architectural perspective it opens up new alternatives that didn’t exist earlier than.”
Despite the fact that Valialkin and the VictoriaMetrics crew have soured on OTel as an entire, the core thought–to standardize observability knowledge–stays a great one.
“I really like the concept of OpenTelemtery to unify observability right into a single place so as to have the ability to accumulate and remodel and course of observability knowledge in a single place,” Valialkin stated. “The concept is nice. However the implementation shouldn’t be superb. We’re not very pleased with it.”
A more sensible choice for metrics already exists, Valialkin stated. Prometheus has a a lot smaller library, and its textual content exposition protocol is environment friendly, easy, and extensively used. It’s already a de-facto customary, and would make a greater official customary than what the OTel crew got here up with, he stated.
“It’s extensively utilized by many software program firms,” Valialkin stated. “It has good protection for metrics. It’s simple to debug. It’s simple to implement. It’s simple to parse in comparison with OpenTelemetry. And it’s not too complicated. It isn’t bloated in comparison with OpenTelemetry.”
Alas, Prometheus is simply used for metrics, and doesn’t assist OTel requirements for labeling, which is essential for correlating with different observability knowledge varieties. “It might be onerous to modify between logs and traces and metrics when utilizing Prometheus textual content exposition format for metrics assortment,” Valialkin stated.
VictoriaMetrics is shifting ahead with its assist for the OTel metrics knowledge customary, albeit by means of its personal customized library. Even with the slimmed down customized library, ingesting OTel metrics knowledge is slower and consumes extra sources than any of the opposite metric knowledge varieties supported by VictoriaMetrics.
“We now have assist of 10 protocols, or one thing like that, for ingestion,” Khavronenko stated. “None of them is so complicated.”
In the meantime, VictoriaMetrics is shifting ahead with a brand new product: VictoriaLogs. The corporate can be adopting OTel’s log protocol for the product, and is girding for extra of the identical.
“I feel that it shares the identical complexity as the usual for metrics,” Valialkin stated,” so which may be the principle stumbling level.”
Associated Gadgets:
OpenTelemetry Positive factors Momentum as Observability Normal
Why Roblox Picked VictoriaMetrics for Observability Information Overhaul
Open Supply Occasions Sequence Database VictoriaMetrics Sees Vital Development