# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO # # When uploading crates to the registry Cargo will automatically # "normalize" Cargo.toml files for maximal compatibility # with all versions of Cargo and also rewrite `path` dependencies # to registry (e.g., crates.io) dependencies. # # If you are reading this file be aware that the original Cargo.toml # will likely look very different (and much more reasonable). # See Cargo.toml.orig for the original contents. [package] edition = "2021" rust-version = "1.75.0" name = "opentelemetry_sdk" version = "0.33.0" build = false autolib = false autobins = false autoexamples = false autotests = false autobenches = false description = "The SDK for the OpenTelemetry metrics collection and distributed tracing framework" homepage = "https://github.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-sdk" readme = "README.md" license = "Apache-2.0" repository = "https://github.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-sdk" [package.metadata.docs.rs] all-features = true rustdoc-args = [ "--cfg", "docsrs", ] [features] bench_profiling = [] default = [ "trace", "metrics", "logs", "internal-logs", ] experimental_async_runtime = [ "dep:futures-channel", "dep:futures-executor", "dep:futures-util", "dep:thiserror", ] experimental_logs_batch_log_processor_with_async_runtime = [ "logs", "experimental_async_runtime", ] experimental_metrics_bound_instruments = [ "metrics", "opentelemetry/experimental_metrics_bound_instruments", ] experimental_metrics_custom_reader = ["metrics"] experimental_metrics_disable_name_validation = ["metrics"] experimental_metrics_periodicreader_with_async_runtime = [ "metrics", "experimental_async_runtime", ] experimental_trace_batch_span_processor_with_async_runtime = [ "tokio/sync", "trace", "experimental_async_runtime", ] internal-logs = ["opentelemetry/internal-logs"] jaeger_remote_sampler = [ "trace", "opentelemetry-http", "http", "serde", "serde_json", "url", "experimental_async_runtime", ] logs = [ "opentelemetry/logs", "dep:futures-channel", "dep:futures-executor", "dep:futures-util", ] metrics = [ "opentelemetry/metrics", "dep:futures-channel", "dep:futures-executor", "dep:futures-util", "dep:thiserror", ] rt-tokio = [ "tokio/rt", "tokio/time", "tokio-stream", "experimental_async_runtime", ] rt-tokio-current-thread = [ "tokio/rt", "tokio/time", "tokio-stream", "experimental_async_runtime", ] spec_unstable_metrics_views = ["metrics"] testing = [ "opentelemetry/testing", "trace", "metrics", "logs", "tokio/sync", ] trace = [ "opentelemetry/trace", "rand", "percent-encoding", "dep:futures-channel", "dep:futures-executor", "dep:futures-util", "dep:thiserror", ] [lib] name = "opentelemetry_sdk" path = "src/lib.rs" bench = false [[test]] name = "miri_smoke" path = "tests/miri_smoke.rs" [[test]] name = "otel_default_constants" path = "tests/otel_default_constants.rs" [[bench]] name = "batch_span_processor" path = "benches/batch_span_processor.rs" harness = false required-features = ["testing"] [[bench]] name = "bound_instruments" path = "benches/bound_instruments.rs" harness = false required-features = [ "metrics", "experimental_metrics_custom_reader", "experimental_metrics_bound_instruments", "spec_unstable_metrics_views", ] [[bench]] name = "context" path = "benches/context.rs" harness = false [[bench]] name = "log" path = "benches/log.rs" harness = false required-features = ["logs"] [[bench]] name = "log_enabled" path = "benches/log_enabled.rs" harness = false [[bench]] name = "log_exporter" path = "benches/log_exporter.rs" harness = false [[bench]] name = "log_processor" path = "benches/log_processor.rs" harness = false [[bench]] name = "metric" path = "benches/metric.rs" harness = false required-features = [ "metrics", "spec_unstable_metrics_views", "experimental_metrics_custom_reader", ] [[bench]] name = "metrics_counter" path = "benches/metrics_counter.rs" harness = false required-features = ["experimental_metrics_custom_reader"] [[bench]] name = "metrics_gauge" path = "benches/metrics_gauge.rs" harness = false required-features = ["experimental_metrics_custom_reader"] [[bench]] name = "metrics_histogram" path = "benches/metrics_histogram.rs" harness = false required-features = ["experimental_metrics_custom_reader"] [[bench]] name = "span" path = "benches/span.rs" harness = false [[bench]] name = "span_builder" path = "benches/span_builder.rs" harness = false [[bench]] name = "trace" path = "benches/trace.rs" harness = false [[bench]] name = "tracer_creation" path = "benches/tracer_creation.rs" harness = false [dependencies.futures-channel] version = "0.3" optional = true [dependencies.futures-executor] version = "0.3" optional = true [dependencies.futures-util] version = "0.3" features = [ "std", "sink", "async-await-macro", ] optional = true default-features = false [dependencies.http] version = "1.1" features = ["std"] optional = true default-features = false [dependencies.opentelemetry] version = "0.33" default-features = false [dependencies.opentelemetry-http] version = "0.33" optional = true default-features = false [dependencies.percent-encoding] version = "2.0" optional = true [dependencies.rand] version = "0.9" features = [ "std", "std_rng", "small_rng", "os_rng", "thread_rng", ] optional = true default-features = false [dependencies.serde] version = "1.0" features = [ "derive", "rc", ] optional = true default-features = false [dependencies.serde_json] version = "1.0" optional = true [dependencies.thiserror] version = "2" optional = true default-features = false [dependencies.tokio] version = "1" optional = true default-features = false [dependencies.tokio-stream] version = "0.1" optional = true [dependencies.url] version = "2.5" optional = true default-features = false [dev-dependencies.criterion] version = "0.5" features = ["html_reports"] [dev-dependencies.rstest] version = "0.26.1" [dev-dependencies.temp-env] version = "0.3.6" [dev-dependencies.tokio] version = "1" features = [ "macros", "rt-multi-thread", ] default-features = false [target.'cfg(not(target_has_atomic = "64"))'.dependencies.portable-atomic] version = "1" features = ["fallback"] default-features = false [target.'cfg(not(target_os = "windows"))'.dev-dependencies.pprof] version = "0.14" features = [ "flamegraph", "criterion", ] [lints.clippy.all] level = "warn" priority = 1 [lints.rust] edition_2024_expr_fragment_specifier = "allow" if_let_rescope = "allow" tail_expr_drop_order = "allow" [lints.rust.rust_2024_compatibility] level = "warn" priority = -1