Open Telemetry
An observability framework and toolkit designed to facilitate the:
Export
of telemetry data such as traces, metrics, and logs.
Open source, as well as vendor- and tool-agnostic, meaning that it can be used with a broad variety of observability backends, including open source tools like Jaeger and Prometheus, as well as commercial offerings. OpenTelemetry is not an observability backend itself.
OpenTelemetry is designed to be extensible.
Main components
A specification for all components.
A standard protocol that defines the shape of telemetry data.
Semantic conventions that define a standard naming scheme for common telemetry data types.
APIs that define how to generate telemetry data.
Language SDKs that implement the specification, APIs, and export of telemetry data.
A library ecosystem that implements instrumentation for common libraries and frameworks.
Automatic instrumentation components that generate telemetry data without requiring code changes.
The OpenTelemetry Collector, a proxy that receives, processes, and exports telemetry data.
Various other tools, such as the OpenTelemetry Operator for Kubernetes, OpenTelemetry Helm Charts, and community assets for FaaS.
If your goal is to get observability by writing code or you want to have your dependencies emit telemetry for you automatically.
Instrumentation
As ops you might want to add observability to one or more applications without having to edit the source.
Zero-code instrumentation adds the OpenTelemetry API and SDK capabilities to your application typically as an agent or agent-like installation. (The specific mechanisms involved may differ by language)
Code-based
Will require to:
Import the OpenTelemetry API and SDK.
Configure the OpenTelemetry API and SDK.
Create telemetry data.
Export this data.
Main Components
Collector
Vendor agnosticway to receive, process and export telemetry data.
Last updated