[package] name = "tracing-opentelemetry" version = "0.28.0" description = "OpenTelemetry integration for tracing" homepage = "https://github.com/tokio-rs/tracing-opentelemetry" repository = "https://github.com/tokio-rs/tracing-opentelemetry" readme = "README.md" categories = [ "development-tools::debugging", "development-tools::profiling", "asynchronous", ] keywords = ["tracing", "opentelemetry", "jaeger", "zipkin", "async"] license = "MIT" edition = "2021" rust-version = "1.70.0" [features] default = ["tracing-log", "metrics"] # Enables support for exporting OpenTelemetry metrics metrics = ["opentelemetry/metrics","opentelemetry_sdk/metrics", "smallvec"] # Enables experimental support for OpenTelemetry gauge metrics metrics_gauge_unstable = ["opentelemetry/otel_unstable"] [dependencies] opentelemetry = { version = "0.27.0", default-features = false, features = ["trace"] } opentelemetry_sdk = { version = "0.27.0", default-features = false, features = ["trace"] } tracing = { version = "0.1.35", default-features = false, features = ["std"] } tracing-core = "0.1.28" tracing-subscriber = { version = "0.3.0", default-features = false, features = ["registry", "std"] } tracing-log = { version = "0.2.0", default-features = false, optional = true } once_cell = "1.13.0" # Fix minimal-versions async-trait = { version = "0.1.56", optional = true } futures-util = { version = "0.3.17", optional = true } lazy_static = { version = "1.0.2", optional = true } thiserror = { version = "1.0.31", optional = true } smallvec = { version = "1.0", optional = true } [dev-dependencies] async-trait = "0.1.56" criterion = { version = "0.5.1", default-features = false, features = ["html_reports"] } opentelemetry = { version = "0.27.0", features = ["trace", "metrics"] } opentelemetry_sdk = { version = "0.27.0", default-features = false, features = ["trace", "rt-tokio"] } opentelemetry-stdout = { version = "0.27.0", features = ["trace", "metrics"] } opentelemetry-otlp = { version = "0.27.0", features = ["metrics"] } opentelemetry-semantic-conventions = { version = "0.27.0", features = ["semconv_experimental"] } futures-util = { version = "0.3.17", default-features = false } tokio = { version = "1", features = ["full"] } tokio-stream = "0.1" tracing = { version = "0.1.35", default-features = false, features = ["std", "attributes"] } tracing-error = "0.2.0" tracing-subscriber = { version = "0.3.0", default-features = false, features = ["registry", "std", "fmt"] } [target.'cfg(not(target_os = "windows"))'.dev-dependencies] pprof = { version = "0.13.0", features = ["flamegraph", "criterion"] } [target.'cfg(all(target_arch = "wasm32", not(target_os = "wasi")))'.dependencies] js-sys = "0.3.64" web-time = "1.0.0" [lib] bench = false [[bench]] name = "trace" harness = false [[bench]] name = "metrics" harness = false [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"]