graph LR
OpenTelemetry_API["OpenTelemetry API"]
OpenTelemetry_SDK["OpenTelemetry SDK"]
OTLP_Exporters["OTLP Exporters"]
Prometheus_Exporter["Prometheus Exporter"]
Zipkin_Exporters["Zipkin Exporters"]
Context_Propagators["Context Propagators"]
OpenTelemetry_API -- "Delegates Implementation To" --> OpenTelemetry_SDK
OpenTelemetry_API -- "Provides Abstract Interfaces For" --> OpenTelemetry_SDK
OpenTelemetry_SDK -- "Sends Telemetry Data To" --> OTLP_Exporters
OpenTelemetry_SDK -- "Utilizes for OTLP Export" --> OTLP_Exporters
OpenTelemetry_SDK -- "Sends Metrics To" --> Prometheus_Exporter
OpenTelemetry_SDK -- "Configures Metric Export Via" --> Prometheus_Exporter
OpenTelemetry_SDK -- "Sends Traces To" --> Zipkin_Exporters
OpenTelemetry_SDK -- "Configures Trace Export Via" --> Zipkin_Exporters
OpenTelemetry_API -- "Uses for Context Serialization/Deserialization" --> Context_Propagators
OpenTelemetry_API -- "Integrates with for Distributed Tracing" --> Context_Propagators
click OpenTelemetry_API href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/opentelemetry-python/OpenTelemetry_API.md" "Details"
click OpenTelemetry_SDK href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/opentelemetry-python/OpenTelemetry_SDK.md" "Details"
click OTLP_Exporters href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/opentelemetry-python/OTLP_Exporters.md" "Details"
click Prometheus_Exporter href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/opentelemetry-python/Prometheus_Exporter.md" "Details"
click Zipkin_Exporters href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/opentelemetry-python/Zipkin_Exporters.md" "Details"
The OpenTelemetry architecture is structured around a clear separation of concerns, enabling flexible and extensible observability. The OpenTelemetry API provides a consistent, vendor-neutral interface for application instrumentation, allowing developers to generate traces, metrics, and logs without coupling to specific backend implementations. The OpenTelemetry SDK acts as the core processing engine, taking raw telemetry data from the API, applying configuration-driven logic such as sampling and resource enrichment, and preparing it for export. Various Exporters, including OTLP Exporters for gRPC/HTTP, Prometheus Exporter for metrics scraping, and Zipkin Exporters for trace collection, handle the transmission of processed telemetry to different observability backends. Furthermore, Context Propagators are integral for distributed tracing, ensuring that contextual information like trace IDs and baggage is correctly propagated across service boundaries, enabling end-to-end visibility in complex microservice environments. This modular design facilitates easy integration and adaptability to diverse observability ecosystems.
OpenTelemetry API [Expand]
The abstract, public-facing interface for instrumenting applications, defining how telemetry data (traces, metrics, logs, baggage, context) is created and accessed.
Related Classes/Methods:
OpenTelemetry SDK [Expand]
The concrete implementation of the OpenTelemetry API, responsible for processing, sampling, batching, and managing the lifecycle of telemetry data before export.
Related Classes/Methods:
OTLP Exporters [Expand]
A group of exporters responsible for encoding and transmitting OpenTelemetry data models (traces, metrics, logs) to OTLP-compatible collectors via gRPC or HTTP.
Related Classes/Methods:
Prometheus Exporter [Expand]
An exporter component that exposes OpenTelemetry metrics in a format consumable by Prometheus, typically via an HTTP endpoint.
Related Classes/Methods:
Zipkin Exporters [Expand]
A set of exporters responsible for converting and sending trace data to Zipkin collectors, supporting various encoding formats.
Related Classes/Methods:
Components that implement context serialization and deserialization (e.g., B3, Jaeger) for propagating trace and baggage context across service boundaries in distributed systems.
Related Classes/Methods: