The OpenTelemetry Rust repository is the official Rust implementation of the OpenTelemetry specification, providing a comprehensive collection of tools, APIs, and SDKs for instrumenting applications to generate, collect, and export telemetry data. The project enables developers to understand software performance and behavior by capturing metrics, logs, and traces that can be analyzed using observability platforms like Prometheus, Jaeger, and other compatible backends.
The repository is organized around several core crates that serve different purposes in the telemetry pipeline. The opentelemetry crate provides the foundational API layer required for instrumenting libraries and applications, encompassing the Context API, Baggage API, Propagators API, Logging Bridge API, Metrics API, and Tracing API. The opentelemetry-sdk crate contains the official SDK implementation with Logging SDK, Metrics SDK, and Tracing SDK components. For exporting telemetry data, the opentelemetry-otlp crate handles the OTLP protocol format, while opentelemetry-stdout provides a simple exporter for debugging and learning purposes. Additional specialized exporters include opentelemetry-prometheus for Prometheus integration and opentelemetry-http for HTTP-based telemetry transport. The project also maintains logging appenders that bridge existing logging libraries to the OpenTelemetry data model, including appenders for both the log and tracing crates.
The project maintains varying stability levels across its components, with some signals at stable status including the Logs API, Logs SDK, Metrics API, and Metrics SDK, while others like Traces API and Traces SDK remain in beta. The OTLP exporters for logs and metrics are at release candidate status, and the Prometheus exporter is in beta. The minimum supported Rust version is 1.75, with the project committing to support the current stable compiler and three prior minor versions.
The project is maintained by a team including Cijo Thomas, Lalit Kumar Bhasin, Utkarsh Umesan Pillai, and Zhongyang Wu, with approvers Björn Antonsson and Scott Gerring. The Rust special interest group meets on alternating weeks to coordinate development efforts, with meeting notes publicly available. The repository provides getting started examples for logs, metrics, and traces, along with additional integration patterns in its examples directory, making it accessible to developers new to OpenTelemetry.