[package] name = "init-tracing-opentelemetry" description = "A set of helpers to initialize (and more) tracing + opentelemetry (compose your own or use opinionated preset)" readme = "README.md" keywords = ["tracing", "opentelemetry"] categories = ["development-tools::debugging", "development-tools::profiling"] homepage = "https://github.com/davidB/tracing-opentelemetry-instrumentation-sdk/tree/main/init-tracing-opentelemetry" edition.workspace = true version = "0.25.0" authors.workspace = true repository.workspace = true license.workspace = true [dependencies] opentelemetry = { workspace = true } opentelemetry-aws = { workspace = true, optional = true, features = ["trace"] } opentelemetry-jaeger-propagator = { workspace = true, optional = true } opentelemetry-otlp = { workspace = true, optional = true, features = [ "grpc-tonic", "trace", ] } # opentelemetry-resource-detectors = { workspace = true } //FIXME enable when available for opentelemetry >= 0.25 opentelemetry-stdout = { workspace = true, features = [ "trace", ], optional = true } opentelemetry-semantic-conventions = { workspace = true, optional = true } opentelemetry-zipkin = { workspace = true, features = [], optional = true } opentelemetry_sdk = { workspace = true } thiserror = "1.0" tonic = { workspace = true, optional = true, features = ["tls"] } tracing = { workspace = true } tracing-logfmt = { version = "0.3", optional = true } tracing-opentelemetry = { workspace = true } tracing-subscriber = { version = "0.3", default-features = false, features = [ "ansi", "env-filter", "fmt", "json", ], optional = true } [dev-dependencies] assert2 = { workspace = true } rstest = { workspace = true } # need tokio runtime to run smoke tests. opentelemetry_sdk = { workspace = true, features = [ "trace", "rt-tokio", "testing", ] } serde = { version = "1.0.136", features = ["derive"] } serde_json = "1.0.79" tokio-stream = { version = "0.1", features = ["net"] } tracing-opentelemetry-instrumentation-sdk = { path = "../tracing-opentelemetry-instrumentation-sdk" } tracing-subscriber = { version = "0.3", default-features = false, features = [ "env-filter", "fmt", "json", ] } [features] jaeger = ["dep:opentelemetry-jaeger-propagator"] otlp = [ "opentelemetry-otlp/http-proto", "opentelemetry-otlp/reqwest-client", "opentelemetry-otlp/reqwest-rustls", "tracer", ] stdout = ["dep:opentelemetry-stdout", "tracer"] tracer = ["dep:opentelemetry-semantic-conventions"] xray = ["dep:opentelemetry-aws"] zipkin = ["dep:opentelemetry-zipkin"] tracing_subscriber_ext = ["dep:tracing-subscriber", "otlp"] tls = ["tonic/tls", "opentelemetry-otlp/tls", "opentelemetry-otlp/tls-roots"] logfmt = ["dep:tracing-logfmt"]