[package] name = "axum-tracing-opentelemetry" description = "Middlewares and tools to integrate axum + tracing + opentelemetry" readme = "README.md" keywords = ["axum", "tracing", "opentelemetry"] categories = [ "development-tools::debugging", "development-tools::profiling", "web-programming", ] homepage = "https://github.com/davidB/tracing-opentelemetry-instrumentation-sdk/tree/main/axum-tracing-opentelemetry" rust-version.workspace = true edition.workspace = true version = "0.24.1" authors.workspace = true repository.workspace = true license.workspace = true [dependencies] axum = { workspace = true, features = ["matched-path"] } futures-core = "0.3" futures-util = { version = "0.3", default-features = false, features = [] } http = { workspace = true } opentelemetry = { workspace = true, features = [ "trace", ], default-features = false } pin-project-lite = "0.2" tower = { workspace = true } tracing = { workspace = true } tracing-opentelemetry = { workspace = true } tracing-opentelemetry-instrumentation-sdk = { path = "../tracing-opentelemetry-instrumentation-sdk", features = [ "http", ], version = "0.24" } [dev-dependencies] fake-opentelemetry-collector = { path = "../fake-opentelemetry-collector" } testing-tracing-opentelemetry = { path = "../testing-tracing-opentelemetry" } assert2 = { workspace = true } hyper = { workspace = true } insta = { workspace = true } opentelemetry-otlp = { workspace = true, features = [ "http-proto", "reqwest-client", "reqwest-rustls", ] } opentelemetry-proto = { workspace = true, features = ["gen-tonic"] } rstest = { workspace = true } serde = { version = "1.0.136", features = ["derive"] } serde_json = "1.0.79" tokio = { workspace = true, features = ["full"] } tokio-stream = { workspace = true, features = ["net"] } tracing-subscriber = { version = "0.3", default-features = false, features = [ "env-filter", "fmt", "json", ] } # need tokio runtime to run smoke tests. opentelemetry_sdk = { workspace = true, features = [ "trace", "rt-tokio", "testing", ] } [features] # to use level `info` instead of `trace` to create otel span tracing_level_info = [ "tracing-opentelemetry-instrumentation-sdk/tracing_level_info", ]