OpenTelemetry provides the libraries, agents, and other components that you need to capture telemetry from your services so that you can better observe, manage, and debug them. Specifically, OpenTelemetry captures metrics, distributed traces, resource metadata, and logs (logging support is incubating now) from your backend and client applications and then sends this data to backends like Prometheus, Jaeger, Zipkin, and others for processing. OpenTelemetry is composed of the following:
OpenTelemetry is a CNCF Sandbox member, formed through a merger of the OpenTracing and OpenCensus projects.
Most OpenTelemetry components are already in beta and are proceeding to GA release candidates.
In software, observability typically refers to telemetry produced by services and is often divided into three major verticals:
These verticals are tightly interconnected. Metrics can be used to pinpoint, for example, a subset of misbehaving traces. Logs associated with those traces could help to find the root cause of this behavior. And then new metrics can be configured, based on this discovery, to catch this issue earlier next time. Other verticals exist (continuous profiling, production debugging, etc.), however traces, metrics, and logs are the three most well adopted across the industry.
OpenTelemetry will not initially support logging, though we aim to incorporate this over time.
The spec is available in the open-telemetry/specification repo on GitHub.
Excellent! We list the best ways to get involved on our community GitHub page, including mailing lists, our Gitter channels, the community calendar, and the monthly community meeting.
This work is licensed under a Creative Commons Attribution 4.0 International License.