Quick Dictionary to Open<X> Projects in Observability
Do you also find yourself confused by all the Open-this and Open-that names flying around? There are currently a good few Open<X> projects, standards, tools — OpenTelemetry, OpenTracing, OpenCensus, OpenSearch… heck, even my podcast is called OpenObservability! And new Open<X> names seem to be popping up every other day.
If you too feel this way, there’s no need. Many feel similarly confused. In fact, on my recent podcast episode with Richard “RichiH” Hartmann, a prominent figure in the Cloud Native Computing Foundation (CNCF), even Richi admitted it’s so confusing that he finds himself explaining that even within the CNCF Technical Oversight Committee (TOC) — the body overseeing all the projects of the CNCF.
So, worry no more! In this short post I’ll make an order in the different Open<X>, at least within the DevOps Observability domain, and provide useful resources for further reading. I hope you find it useful.
OpenTelemetry:
A unified set of vendor-agnostic APIs, SDKs and tools for generating and collecting telemetry data, mainly traces, metrics and logs, and then exporting it to a variety of analysis tools. OpenTelemetry was formed under the CNCF through the merger of OpenTracing and OpenCensus. It’s currently in GA for tracing and still pre-GA for metrics and logs. For more information check out this guide to OpenTelemetry.
OpenTracing:
A vendor-neutral API specification for distributed tracing instrumentation. OpenTracing allows developers to add instrumentation to their application code using APIs that do not lock them into any one particular product or vendor. OpenTracing is a CNCF OSS project that has been merged into OpenTelemetry. For more information on OpenTracing see this guide.
OpenCensus:
A vendor-neutral suite of client libraries that allows you to collect application metrics and distributed traces, then transfer the data to a backend of your choice in real time. The project originated from Google Census, and is currently a CNCF OSS project that has been merged into OpenTelemetry.
OpenMetrics:
A standard for transmitting cloud-native metrics based on Prometheus’ wire format for metrics. Currently a CNCF sandbox project, it is in final approvals to advance into CNCF incubation. OpenMetrics is also in advanced stages to become an IETF standard.
OpenSearch:
An OSS search and analytics tool which started as a fork of Elasticsearch & Kibana (v7.10.2) following the relicensing of these projects from Apache 2.0 into a non OSS license. OpenDistro for Elasticsearch is also merged into it. OpenSearch has recently reached GA.
OpenDistro for Elasticsearch:
A set of open source plugins for Elasticsearch developed by AWS, providing capabilities around event monitoring, alerting, and more. OpenDistro for Elasticsearch (ODfE) has been merged into the OpenSearch project.
Endnote
As you can see, not only are these many Open<X> names pretty confusing, but also the overlapping scope of some of the involved projects in the observability domain — and the various mergers between them. Just to recap, the main takeaways are:
- OpenTelemetry supersedes OpenTracing and OpenCensus. It’s the standard future path for traces, metrics and logs collection.
- OpenSearch is an OSS fork of ElasticSearch and Kibana (which are no longer OSS). It also contains the former OpenDistro for Elasticsearch project.
- OpenMetrics standardizes the metrics exposition format based on Prometheus’ format.
This is not an exhaustive list by any means. You have many more Open<X> out there such as OpenTSDB, OpenStack, and many more, in observability and in other domains. But I hope this helps spell things out in the observability telemetry realm.
Check out the July 2020 episode of OpenObservability Talks for more insights.