opentelemetry_sdk 0.20.0

The SDK for the OpenTelemetry metrics collection and distributed tracing framework
Documentation
[package]
name = "opentelemetry_sdk"
version = "0.20.0"
description = "The SDK for the OpenTelemetry metrics collection and distributed tracing framework"
homepage = "https://github.com/open-telemetry/opentelemetry-rust"
repository = "https://github.com/open-telemetry/opentelemetry-rust"
readme = "README.md"
license = "Apache-2.0"
edition = "2021"
rust-version = "1.60"

[dependencies]
opentelemetry_api = { version = "0.20", path = "../opentelemetry-api/" }
opentelemetry-http = { version = "0.9", path = "../opentelemetry-http", optional = true }
async-std = { version = "1.6", features = ["unstable"], optional = true }
async-trait = { version = "0.1", optional = true }
crossbeam-channel = { version = "0.5", optional = true }
futures-channel = "0.3"
futures-executor = "0.3"
futures-util = { version = "0.3.17", default-features = false, features = ["std", "sink", "async-await-macro"] }
once_cell = "1.10"
ordered-float = "3.4.0"
percent-encoding = { version = "2.0", optional = true }
rand = { version = "0.8", default-features = false, features = ["std", "std_rng"], optional = true }
regex = { version = "1.0", optional = true }
serde = { version = "1.0", features = ["derive", "rc"], optional = true }
serde_json = { version = "1", optional = true }
thiserror = "1"
url = { version = "2.2", optional = true }
tokio = { version = "1.0", default-features = false, features = ["rt", "time"], optional = true }
tokio-stream = { version = "0.1", optional = true }
http = { version = "0.2", optional = true }

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[dev-dependencies]
indexmap = "1.8"
criterion = { version = "0.5", features = ["html_reports"] }
pprof = { version = "0.12", features = ["flamegraph", "criterion"] }

[features]
default = ["trace"]
trace = ["opentelemetry_api/trace", "crossbeam-channel", "rand", "async-trait", "percent-encoding"]
jaeger_remote_sampler = ["trace", "opentelemetry-http", "http", "serde", "serde_json", "url"]
logs = ["opentelemetry_api/logs", "crossbeam-channel", "async-trait", "serde_json"]
logs_level_enabled = ["logs", "opentelemetry_api/logs_level_enabled"]
metrics = ["opentelemetry_api/metrics", "regex", "async-trait"]
testing = ["opentelemetry_api/testing", "trace", "metrics", "logs", "rt-async-std", "rt-tokio", "rt-tokio-current-thread", "tokio/macros", "tokio/rt-multi-thread"]
rt-tokio = ["tokio", "tokio-stream"]
rt-tokio-current-thread = ["tokio", "tokio-stream"]
rt-async-std = ["async-std"]

[[bench]]
name = "context"
harness = false

[[bench]]
name = "key_value_map"
harness = false

[[bench]]
name = "span_builder"
harness = false

[[bench]]
name = "trace"
harness = false

[[bench]]
name = "batch_span_processor"
harness = false
required-features = ["rt-tokio", "testing"]

[[bench]]
name = "metric"
harness = false
required-features = ["metrics"]