Skip to content
OpenTelemetry API and SDK for Rust
Rust Shell
Branch: master
Clone or download
jtescher Add initial trace benchmarks (#69)
Benchmarks provided by the [criterion](
crate. Initially only benchmarking span creation with various
combinations of attributes.
Latest commit 51e096f Feb 10, 2020

OpenTelemetry-Rust opentelemetry Documentation GitHub Actions CI Gitter chat

A Rust OpenTelemetry client.

Quick Start

use opentelemetry::{api::{Provider, TracerGenerics}, global, sdk};

fn main() {

    global::trace_provider().get_tracer("component-a").with_span("foo", |_span| {
        global::trace_provider().get_tracer("component-b").with_span("bar", |_span| {
            global::trace_provider().get_tracer("component-c").with_span("baz", |_span| {


See the opentelemetry-example-app for a complete example.


See the contributing file.

Release Schedule

OpenTelemetry Rust is under active development. Below is the release schedule for the Rust library. The first version of a release isn't guaranteed to conform to a specific version of the specification, and future releases will not attempt to maintain backwards compatibility with the alpha release.

Component Version Target Date
Tracing API Alpha November 8 2019
Tracing SDK Alpha November 8 2019
Metrics API Alpha November 8 2019
Metrics SDK Alpha November 8 2019
Zipkin Trace Exporter Alpha Unknown
Jaeger Trace Exporter Alpha November 8 2019
Prometheus Metrics Exporter Alpha November 8 2019
Trace Context Propagation Alpha Unknown
OpenTracing Bridge Alpha Unknown
OpenCensus Bridge Alpha Unknown
You can’t perform that action at this time.