[package] name = "telemetry-rust" version = "3.5.0" edition = "2021" license = "MIT" description = "Open Telemetry fox Axum and Tracing" [dependencies] http = "1.1.0" opentelemetry = { version = "0.26", default-features = false, features = [ "trace", ] } tracing-opentelemetry = "0.27" opentelemetry-http = { version = "0.26", features = ["hyper"] } opentelemetry-otlp = { version = "0.26", features = ["http-proto"] } opentelemetry-zipkin = { version = "0.26", features = [], optional = true } opentelemetry_sdk = { version = "0.26", default-features = false, features = [ "rt-tokio", ] } opentelemetry-semantic-conventions = { version = "0.26", features = ["semconv_experimental"] } tracing-opentelemetry-instrumentation-sdk = { version = "0.23", features = ["http"] } tracing = { version = "0.1.40", default-features = false } tracing-subscriber = { version = "0.3.18", default-features = false, features = [ "env-filter", "fmt", "json", "ansi" ] } serde = { version = "1.0.200", features = ["derive"], optional = true } serde_json = { version = "1.0.116", optional = true } opentelemetry_api = { version = "0.20.0", features = ["testing"], optional = true } rand = { version = "0.8.5", optional = true } tower = { version = "0.4", optional = true } axum = { version = "0.7.5", optional = true } pin-project-lite = { version = "0.2", optional = true } futures-util = { version = "0.3", default-features = false, features = [], optional = true } hyper = { package = "hyper", version = "1.3", default-features = false, features = ["http1", "client"] } http-body-util = { version = "0.1.1", optional = true } aws-types = { version = "1", optional = true } lambda_runtime = { version = "0", optional = true } paste = { version = "1.0.14", optional = true } hyper-util = "0.1.9" [dev-dependencies] assert2 = "0.3" rstest = "0.23" tokio = "1.41" [features] full = ["aws-full", "test"] default = ["zipkin"] zipkin = ["dep:opentelemetry-zipkin"] future = ["dep:pin-project-lite"] test = ["axum", "dep:serde", "dep:serde_json", "dep:opentelemetry_api", "dep:rand", "dep:http-body-util"] axum = ["dep:axum", "dep:tower", "dep:futures-util", "dep:pin-project-lite"] aws-span = ["dep:aws-types", "dep:paste"] aws-instrumentation = ["future"] aws-lambda = ["dep:tower", "dep:lambda_runtime", "future"] aws = ["aws-span", "aws-instrumentation"] aws-full = ["aws", "aws-lambda"] [package.metadata.release] allow-branch = ["main"] publish = false [profile.dev] lto = false split-debuginfo = "unpacked" opt-level = 0 overflow-checks = false [profile.release] opt-level = 's' incremental = false lto = true # The Rust compiler splits your crate into multiple codegen units to parallelize (and thus speed up) compilation. However, this might cause it to miss some potential optimizations. codegen-units = 1