[][src]Module opentelemetry::api

OpenTelemetry API: What applications use and SDKs implement.

OpenTelemetry Language Libraries are composed of 2 packages: api and sdk.

Third-party libraries and frameworks that want to be instrumented in OpenTelemetry-compatible way will have a dependency on the api package. The developers of these third-party libraries will add calls to telemetry API to produce telemetry data.

Applications that use third-party libraries that are instrumented with OpenTelemetry API will have a choice to enable or not enable the actual delivery of telemetry data. The application can also call telemetry API directly to produce additional telemetry data.

In order to enable telemetry the application must take a dependency on the OpenTelemetry SDK, which implements the delivery of the telemetry. The application must also configure exporters so that the SDK knows where and how to deliver the telemetry.

Re-exports

pub use self::core::Key;
pub use self::core::KeyValue;
pub use self::core::Unit;
pub use self::core::Value;
pub use metrics::counter::Counter;
pub use metrics::counter::CounterHandle;
pub use metrics::gauge::Gauge;
pub use metrics::gauge::GaugeHandle;
pub use metrics::measure::Measure;
pub use metrics::measure::MeasureHandle;
pub use metrics::noop::NoopMeter;
pub use metrics::value::MeasurementValue;
pub use metrics::Instrument;
pub use metrics::InstrumentHandle;
pub use metrics::LabelSet;
pub use metrics::Measurement;
pub use metrics::Meter;
pub use metrics::MetricOptions;
pub use propagation::binary_propagator::BinaryFormat;
pub use propagation::text_propagator::HttpTextFormat;
pub use propagation::Carrier;
pub use trace::b3_propagator::B3Propagator;
pub use trace::event::Event;
pub use trace::link::Link;
pub use trace::noop::NoopProvider;
pub use trace::noop::NoopSpan;
pub use trace::noop::NoopSpanExporter;
pub use trace::noop::NoopTracer;
pub use trace::provider::Provider;
pub use trace::sampler::Sampler;
pub use trace::sampler::SamplingDecision;
pub use trace::sampler::SamplingResult;
pub use trace::span::Span;
pub use trace::span::SpanKind;
pub use trace::span::StatusCode;
pub use trace::span_context::SpanContext;
pub use trace::span_context::SpanId;
pub use trace::span_context::TraceId;
pub use trace::span_context::TRACE_FLAGS_UNUSED;
pub use trace::span_context::TRACE_FLAG_SAMPLED;
pub use trace::span_processor::SpanProcessor;
pub use trace::trace_context_propagator::TraceContextPropagator;
pub use trace::tracer::SpanBuilder;
pub use trace::tracer::Tracer;
pub use trace::tracer::TracerGenerics;

Modules

core

OpenTelemetry shared core date types

metrics

OpenTelemetry Metrics API

propagation

OpenTelemetry Propagator interface

trace

OpenTelemetry Tracing API.