Cargo.toml (80 lines of code) (raw):

[package] name = "otel-lib" version = "0.1.0" authors = ["Azure Edge Devs"] license = "MIT" edition = "2021" [dependencies] axum = "0.6" env_filter = "0.1" futures = "0.3" futures-channel = "0.3" futures-executor = "0.3" futures-util = "0.3" humantime = "2.1" hyper = { version = "0.14", features = ["http1", "server"] } hyper-util = "0.1" log = { version = "0.4", default-features = false } notify = "6" notify-debouncer-mini = "0.4" nix = { version = "0.27", default-features = false, features = [ "process", "hostname", ] } openssl = "0.10" opentelemetry = { version = "0.24", features = ["metrics", "logs"]} opentelemetry-otlp = { version ="0.17", features = ["grpc-tonic","metrics", "logs"]} opentelemetry-prometheus = {version = "0.17" } opentelemetry_sdk = {version = "0.24", features = ["metrics", "logs", "rt-tokio", "testing", "logs_level_enabled"]} opentelemetry-stdout = {version = "0.5", features = ["metrics"]} prometheus = "0.13" serde = { version = "1", features = [ "derive", "rc", ] } serde_json = { version = "1.0", default-features = false, features = [ "alloc", ] } thiserror = "1.0" tokio = "1.40" tokio-openssl = "0.6" tonic = { version = "0.12" } tower = {version = "0.5", features = ["util"]} url = "2" [dev-dependencies] async-stream = "0.3" async-trait = "0.1" filetime = "0.2" opentelemetry-proto = { version = "0.7", features = ["gen-tonic", "metrics", "logs"] } port_check="0.2" prost = "0.13" rcgen = "0.12" reqwest = { version = "0.12", default-features = false } tonic = { version = "0.12", features = ["codegen", "prost"] } tokio = { version= "1.3", features = ["parking_lot"] } tokio-stream = "0.1" uuid = { version = "1", features = ["v4"] } [lints.rust] rust_2018_idioms = "warn" [lints.clippy] all = { level = "warn", priority = -1 } pedantic = { level = "warn", priority = -1 } default_trait_access = "allow" enum_variant_names = "allow" let_and_return = "allow" let_unit_value = "allow" missing_errors_doc = "allow" missing_panics_doc = "allow" module_inception = "allow" module_name_repetitions = "allow" must_use_candidate = "allow" # TODO(rustup): Buggy lint: https://github.com/rust-lang/rust-clippy/issues/12279 no_effect_underscore_binding = "allow" return_self_not_must_use = "allow" similar_names = "allow" struct_field_names = "allow" too_many_arguments = "allow" too_many_lines = "allow" type_complexity = "allow" [features] tests = [] integration = []