diff --git a/Cargo.lock b/Cargo.lock index 51a06fe212c..1c4fa41e9b5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -271,28 +271,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "async-stream" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" -dependencies = [ - "async-stream-impl", - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "async-stream-impl" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - [[package]] name = "async-trait" version = "0.1.91" @@ -391,40 +369,13 @@ dependencies = [ "fs_extra", ] -[[package]] -name = "axum" -version = "0.7.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f" -dependencies = [ - "async-trait", - "axum-core 0.4.5", - "bytes", - "futures-util", - "http", - "http-body", - "http-body-util", - "itoa", - "matchit 0.7.3", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "sync_wrapper", - "tower 0.5.3", - "tower-layer", - "tower-service", -] - [[package]] name = "axum" version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "31b698c5f9a010f6573133b09e0de5408834d0c82f8d7475a89fc1867a71cd90" dependencies = [ - "axum-core 0.5.6", + "axum-core", "bytes", "form_urlencoded", "futures-util", @@ -434,7 +385,7 @@ dependencies = [ "hyper", "hyper-util", "itoa", - "matchit 0.8.4", + "matchit", "memchr", "mime", "percent-encoding", @@ -445,32 +396,12 @@ dependencies = [ "serde_urlencoded", "sync_wrapper", "tokio", - "tower 0.5.3", + "tower", "tower-layer", "tower-service", "tracing", ] -[[package]] -name = "axum-core" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" -dependencies = [ - "async-trait", - "bytes", - "futures-util", - "http", - "http-body", - "http-body-util", - "mime", - "pin-project-lite", - "rustversion", - "sync_wrapper", - "tower-layer", - "tower-service", -] - [[package]] name = "axum-core" version = "0.5.6" @@ -595,7 +526,7 @@ name = "browser-webrtc-example" version = "0.1.0" dependencies = [ "anyhow", - "axum 0.8.9", + "axum", "futures", "js-sys", "libp2p", @@ -606,7 +537,7 @@ dependencies = [ "rust-embed", "tokio", "tokio-util", - "tower 0.5.3", + "tower", "tower-http 0.7.0", "tracing", "tracing-subscriber", @@ -1335,7 +1266,7 @@ dependencies = [ "libc", "option-ext", "redox_users 0.5.2", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -1954,7 +1885,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap 2.13.0", + "indexmap", "slab", "tokio", "tokio-util", @@ -1971,12 +1902,6 @@ dependencies = [ "crunchy", ] -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - [[package]] name = "hashbrown" version = "0.15.5" @@ -2293,7 +2218,7 @@ dependencies = [ "libc", "percent-encoding", "pin-project-lite", - "socket2 0.5.9", + "socket2 0.6.5", "system-configuration 0.6.1", "tokio", "tower-service", @@ -2509,16 +2434,6 @@ dependencies = [ "xmltree", ] -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", -] - [[package]] name = "indexmap" version = "2.13.0" @@ -2567,7 +2482,7 @@ name = "interop-tests" version = "0.1.0" dependencies = [ "anyhow", - "axum 0.8.9", + "axum", "console_error_panic_hook", "futures", "futures-timer", @@ -2949,7 +2864,7 @@ dependencies = [ "libp2p-request-response", "libp2p-swarm", "libp2p-swarm-test", - "prost 0.14.4", + "prost", "prost-codec", "rand 0.8.6", "rand_core 0.6.4", @@ -2992,7 +2907,7 @@ dependencies = [ "multistream-select", "parking_lot", "pin-project", - "prost 0.14.4", + "prost", "rand 0.8.6", "rw-stream-sink", "thiserror 2.0.19", @@ -3021,7 +2936,7 @@ dependencies = [ "libp2p-swarm-test", "libp2p-tcp", "libp2p-yamux", - "prost 0.14.4", + "prost", "prost-codec", "thiserror 2.0.19", "tokio", @@ -3058,7 +2973,7 @@ dependencies = [ "libp2p-core", "libp2p-identity", "libp2p-swarm", - "prost 0.14.4", + "prost", "prost-codec", "rand 0.8.6", "smallvec", @@ -3087,7 +3002,7 @@ dependencies = [ "libp2p-swarm", "libp2p-swarm-test", "prometheus-client", - "prost 0.14.4", + "prost", "prost-codec", "quickcheck-ext", "rand 0.8.6", @@ -3113,7 +3028,7 @@ dependencies = [ "libp2p-identity", "libp2p-swarm", "libp2p-swarm-test", - "prost 0.14.4", + "prost", "prost-codec", "smallvec", "thiserror 2.0.19", @@ -3135,7 +3050,7 @@ dependencies = [ "k256", "multihash", "p256", - "prost 0.14.4", + "prost", "quickcheck-ext", "rand 0.8.6", "ring", @@ -3167,7 +3082,7 @@ dependencies = [ "libp2p-swarm", "libp2p-swarm-test", "libp2p-yamux", - "prost 0.14.4", + "prost", "prost-codec", "quickcheck-ext", "rand 0.8.6", @@ -3283,7 +3198,7 @@ dependencies = [ "libp2p-identity", "multiaddr", "multihash", - "prost 0.14.4", + "prost", "quickcheck-ext", "rand 0.8.6", "snow", @@ -3362,7 +3277,7 @@ dependencies = [ "futures_ringbuf", "libp2p-core", "libp2p-identity", - "prost 0.14.4", + "prost", "prost-codec", "quickcheck-ext", "tracing", @@ -3434,7 +3349,7 @@ dependencies = [ "libp2p-swarm", "libp2p-swarm-test", "libp2p-yamux", - "prost 0.14.4", + "prost", "prost-codec", "quickcheck-ext", "rand 0.8.6", @@ -3460,7 +3375,7 @@ dependencies = [ "libp2p-request-response", "libp2p-swarm", "libp2p-swarm-test", - "prost 0.14.4", + "prost", "prost-codec", "rand 0.8.6", "thiserror 2.0.19", @@ -3496,7 +3411,7 @@ dependencies = [ name = "libp2p-server" version = "0.13.0" dependencies = [ - "axum 0.8.9", + "axum", "base64", "clap", "futures", @@ -3680,7 +3595,7 @@ dependencies = [ "libp2p-core", "libp2p-identity", "libp2p-noise", - "prost 0.14.4", + "prost", "prost-codec", "rand 0.8.6", "serde", @@ -3931,12 +3846,6 @@ dependencies = [ "regex-automata", ] -[[package]] -name = "matchit" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" - [[package]] name = "matchit" version = "0.8.4" @@ -3982,7 +3891,7 @@ dependencies = [ name = "metrics-example" version = "0.1.0" dependencies = [ - "axum 0.8.9", + "axum", "futures", "libp2p", "opentelemetry", @@ -4393,68 +4302,79 @@ checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" [[package]] name = "opentelemetry" -version = "0.27.1" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab70038c28ed37b97d8ed414b6429d343a8bbf44c9f79ec854f3a643029ba6d7" +checksum = "b0142c63252a9e054e68a4c61a5778f7b14f576274d593f8ce883d191a099682" dependencies = [ "futures-core", "futures-sink", "js-sys", "pin-project-lite", - "thiserror 1.0.69", + "thiserror 2.0.19", "tracing", ] [[package]] -name = "opentelemetry-otlp" -version = "0.27.0" +name = "opentelemetry-http" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91cf61a1868dacc576bf2b2a1c3e9ab150af7272909e80085c3173384fe11f76" +checksum = "5683015d09e2df236ef005b17f6f196f0d5f6313c4fa43a7b6a53b52776e4331" dependencies = [ "async-trait", - "futures-core", + "bytes", "http", "opentelemetry", + "reqwest", +] + +[[package]] +name = "opentelemetry-otlp" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9966929966d17620d7c316c643ba62631826e10021409357772d5eea84f62c35" +dependencies = [ + "http", + "opentelemetry", + "opentelemetry-http", "opentelemetry-proto", "opentelemetry_sdk", - "prost 0.13.5", - "thiserror 1.0.69", + "prost", + "reqwest", + "thiserror 2.0.19", "tokio", "tonic", - "tracing", + "tonic-types", ] [[package]] name = "opentelemetry-proto" -version = "0.27.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6e05acbfada5ec79023c85368af14abd0b307c015e9064d249b2a950ef459a6" +checksum = "56d658ba1faf63f7b9c492cfbe6e0ec365440a16132d3270c1065f7b33f1b638" dependencies = [ "opentelemetry", "opentelemetry_sdk", - "prost 0.13.5", + "prost", "tonic", + "tonic-prost", ] [[package]] name = "opentelemetry_sdk" -version = "0.27.1" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "231e9d6ceef9b0b2546ddf52335785ce41252bc7474ee8ba05bfad277be13ab8" +checksum = "9b59f80e1ac4d5ff7a2db8fb6c80badb7f0f3f858211fba08dd9aaec750894f9" dependencies = [ - "async-trait", "futures-channel", "futures-executor", "futures-util", - "glob", "opentelemetry", "percent-encoding", - "rand 0.8.6", - "serde_json", - "thiserror 1.0.69", + "portable-atomic", + "rand 0.9.5", + "thiserror 2.0.19", "tokio", "tokio-stream", - "tracing", ] [[package]] @@ -4561,7 +4481,7 @@ checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455" dependencies = [ "fixedbitset", "hashbrown 0.15.5", - "indexmap 2.13.0", + "indexmap", ] [[package]] @@ -4774,16 +4694,6 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "prost" -version = "0.13.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" -dependencies = [ - "bytes", - "prost-derive 0.13.5", -] - [[package]] name = "prost" version = "0.14.4" @@ -4791,7 +4701,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "528ac67416ff8646872a3c02cad9cc4ee5dc9f9540c9b10771855c95cb2e5ae1" dependencies = [ "bytes", - "prost-derive 0.14.4", + "prost-derive", ] [[package]] @@ -4806,7 +4716,7 @@ dependencies = [ "multimap", "petgraph", "prettyplease", - "prost 0.14.4", + "prost", "prost-types", "regex", "syn 2.0.117", @@ -4820,25 +4730,12 @@ dependencies = [ "asynchronous-codec", "bytes", "futures", - "prost 0.14.4", + "prost", "quickcheck-ext", "thiserror 2.0.19", "unsigned-varint", ] -[[package]] -name = "prost-derive" -version = "0.13.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" -dependencies = [ - "anyhow", - "itertools 0.13.0", - "proc-macro2", - "quote", - "syn 2.0.117", -] - [[package]] name = "prost-derive" version = "0.14.4" @@ -4860,7 +4757,7 @@ checksum = "590aa145fee8f7a26b5a6055365e7c5e89a5c1caae9869de76ec0ee73181a2f9" dependencies = [ "logos 0.16.1", "miette", - "prost 0.14.4", + "prost", "prost-types", ] @@ -4870,7 +4767,7 @@ version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f94967dc7688f3054c7fac87473ffae4cc4c3904800e2d9f5b857246d8963b0a" dependencies = [ - "prost 0.14.4", + "prost", ] [[package]] @@ -4881,7 +4778,7 @@ checksum = "4f25a07a73c6717f0b9bbbd685918f5df9815f7efba450b83d9c9dea41f0e3a1" dependencies = [ "bytes", "miette", - "prost 0.14.4", + "prost", "prost-reflect", "prost-types", "protox-parse", @@ -4953,7 +4850,7 @@ dependencies = [ "quinn-udp", "rustc-hash", "rustls", - "socket2 0.5.9", + "socket2 0.6.5", "thiserror 2.0.19", "tokio", "tracing", @@ -5297,6 +5194,7 @@ dependencies = [ "base64", "bytes", "encoding_rs", + "futures-channel", "futures-core", "futures-util", "h2", @@ -5321,7 +5219,7 @@ dependencies = [ "tokio", "tokio-rustls", "tokio-util", - "tower 0.5.3", + "tower", "tower-http 0.6.10", "tower-service", "url", @@ -5382,7 +5280,7 @@ dependencies = [ "bytecheck", "bytes", "hashbrown 0.17.1", - "indexmap 2.13.0", + "indexmap", "munge", "ptr_meta", "rancor", @@ -5552,7 +5450,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys 0.12.1", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -5610,7 +5508,7 @@ dependencies = [ "security-framework", "security-framework-sys", "webpki-root-certs", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -5798,7 +5696,7 @@ version = "1.0.151" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14" dependencies = [ - "indexmap 2.13.0", + "indexmap", "itoa", "memchr", "serde", @@ -6244,7 +6142,7 @@ dependencies = [ "getrandom 0.4.2", "once_cell", "rustix 1.1.4", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -6273,7 +6171,7 @@ dependencies = [ "fs4", "futures-util", "http", - "indexmap 2.13.0", + "indexmap", "pastey", "reqwest", "serde", @@ -6487,7 +6385,7 @@ version = "1.0.6+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "399b1124a3c9e16766831c6bba21e50192572cdd98706ea114f9502509686ffc" dependencies = [ - "indexmap 2.13.0", + "indexmap", "serde_core", "serde_spanned", "toml_datetime", @@ -6522,16 +6420,13 @@ checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607" [[package]] name = "tonic" -version = "0.12.3" +version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c5b330756d856ffcc4553ab34a5684481ade925ecc54bcd1bf02b1d0d4d52" +checksum = "ac2a5518c70fa84342385732db33fb3f44bc4cc748936eb5833d2df34d6445ef" dependencies = [ - "async-stream", "async-trait", - "axum 0.7.9", "base64", "bytes", - "h2", "http", "http-body", "http-body-util", @@ -6540,47 +6435,51 @@ dependencies = [ "hyper-util", "percent-encoding", "pin-project", - "prost 0.13.5", - "socket2 0.5.9", + "sync_wrapper", "tokio", "tokio-stream", - "tower 0.4.13", + "tower", "tower-layer", "tower-service", "tracing", ] [[package]] -name = "tower" -version = "0.4.13" +name = "tonic-prost" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +checksum = "a55376a0bbaa4975a3f10d009ad763d8f4108f067c7c2e74f3001fb49778d309" dependencies = [ - "futures-core", - "futures-util", - "indexmap 1.9.3", - "pin-project", - "pin-project-lite", - "rand 0.8.6", - "slab", - "tokio", - "tokio-util", - "tower-layer", - "tower-service", - "tracing", + "bytes", + "prost", + "tonic", +] + +[[package]] +name = "tonic-types" +version = "0.14.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73ab1b02061f83d519bba3caa167f88f261ef05720ab8ebc954ade70de3348e8" +dependencies = [ + "prost", + "prost-types", + "tonic", ] [[package]] name = "tower" -version = "0.5.3" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" +checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9" dependencies = [ "futures-core", "futures-util", + "indexmap", "pin-project-lite", + "slab", "sync_wrapper", "tokio", + "tokio-util", "tower-layer", "tower-service", "tracing", @@ -6598,7 +6497,7 @@ dependencies = [ "http", "http-body", "pin-project-lite", - "tower 0.5.3", + "tower", "tower-layer", "tower-service", "url", @@ -6688,14 +6587,12 @@ dependencies = [ [[package]] name = "tracing-opentelemetry" -version = "0.28.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a971f6058498b5c0f1affa23e7ea202057a7301dbff68e968b2d578bcbd053" +checksum = "adbc64cba7137545b8044cb1fe9814f7aacf3c6b5f9b45be8bb5db538befdb26" dependencies = [ "js-sys", - "once_cell", "opentelemetry", - "opentelemetry_sdk", "smallvec", "tracing", "tracing-core", @@ -7102,7 +6999,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" dependencies = [ "anyhow", - "indexmap 2.13.0", + "indexmap", "wasm-encoder", "wasmparser", ] @@ -7128,7 +7025,7 @@ checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" dependencies = [ "bitflags 2.11.1", "hashbrown 0.15.5", - "indexmap 2.13.0", + "indexmap", "semver", ] @@ -7944,7 +7841,7 @@ checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" dependencies = [ "anyhow", "heck", - "indexmap 2.13.0", + "indexmap", "prettyplease", "syn 2.0.117", "wasm-metadata", @@ -7975,7 +7872,7 @@ checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" dependencies = [ "anyhow", "bitflags 2.11.1", - "indexmap 2.13.0", + "indexmap", "log", "serde", "serde_derive", @@ -7994,7 +7891,7 @@ checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" dependencies = [ "anyhow", "id-arena", - "indexmap 2.13.0", + "indexmap", "log", "semver", "serde", @@ -8233,7 +8130,7 @@ checksum = "79b32dd4ad3aca14ae109f8cce0495ac1c57f6f4f00ad459a40e582f89440d97" dependencies = [ "crc32fast", "flate2", - "indexmap 2.13.0", + "indexmap", "memchr", "typed-path", "zopfli", diff --git a/Cargo.toml b/Cargo.toml index e3af0155b74..83e65bc4e73 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -149,6 +149,10 @@ thiserror = "2" tokio = { version = "1.53", default-features = false } tracing = "0.1" tracing-subscriber = "0.3" +tracing-opentelemetry = "0.33" +opentelemetry = "0.32" +opentelemetry-otlp = "0.32" +opentelemetry_sdk = "0.32" unsigned-varint = { version = "0.8" } # Pinned to avoid wasm-bindgen >=0.2.109 which breaks gloo-timers 0.2.6 (used by futures-timer for wasm). # wasm-bindgen-futures pins wasm-bindgen exactly, so capping it caps wasm-bindgen. diff --git a/examples/autonatv2/Cargo.toml b/examples/autonatv2/Cargo.toml index 5aa7da6e38e..98c2c24e69e 100644 --- a/examples/autonatv2/Cargo.toml +++ b/examples/autonatv2/Cargo.toml @@ -21,10 +21,10 @@ tokio = { version = "1.53", features = ["macros", "rt-multi-thread"] } tracing = "0.1" tracing-subscriber = { workspace = true, features = ["env-filter"] } rand = { workspace = true } -opentelemetry = { version = "0.27", optional = true } -opentelemetry_sdk = { version = "0.27", optional = true, features = ["rt-tokio"] } -opentelemetry-otlp = { version = "0.27", optional = true } -tracing-opentelemetry = { version = "0.28", optional = true } +opentelemetry = { workspace = true, optional = true, features = [] } +opentelemetry_sdk = { workspace = true, optional = true, features = ["rt-tokio"] } +opentelemetry-otlp = { workspace = true, optional = true, features = ["grpc-tonic"] } +tracing-opentelemetry = { workspace = true, optional = true } cfg-if = "1.0" [features] diff --git a/examples/autonatv2/src/bin/autonatv2_server.rs b/examples/autonatv2/src/bin/autonatv2_server.rs index 2fb1960fe39..0542f1a0eaa 100644 --- a/examples/autonatv2/src/bin/autonatv2_server.rs +++ b/examples/autonatv2/src/bin/autonatv2_server.rs @@ -27,18 +27,18 @@ async fn main() -> Result<(), Box> { use opentelemetry::trace::TracerProvider as _; use opentelemetry::KeyValue; use opentelemetry_otlp::SpanExporter; - use opentelemetry_sdk::{runtime, trace::TracerProvider}; + use opentelemetry_sdk::trace::SdkTracerProvider; use tracing_subscriber::layer::SubscriberExt; - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_batch_exporter( SpanExporter::builder().with_tonic().build()?, - runtime::Tokio, ) - .with_resource(opentelemetry_sdk::Resource::new(vec![KeyValue::new( - "service.name", - "autonatv2", - )])) + .with_resource( + opentelemetry_sdk::Resource::builder_empty() + .with_attribute(KeyValue::new("service.name", "autonatv2")) + .build(), + ) .build(); let telemetry = tracing_opentelemetry::layer() .with_tracer(provider.tracer("autonatv2")); diff --git a/examples/metrics/Cargo.toml b/examples/metrics/Cargo.toml index 0a90495134b..a4cf4a3a9f9 100644 --- a/examples/metrics/Cargo.toml +++ b/examples/metrics/Cargo.toml @@ -12,13 +12,13 @@ release = false futures = { workspace = true } axum = { workspace = true } libp2p = { path = "../../libp2p", features = ["tokio", "metrics", "ping", "noise", "identify", "tcp", "yamux", "macros"] } -opentelemetry = { version = "0.27", features = ["metrics"] } -opentelemetry-otlp = { version = "0.27", features = ["metrics"] } -opentelemetry_sdk = { version = "0.27", features = ["rt-tokio", "metrics"] } +opentelemetry = { workspace = true, features = ["metrics"] } +opentelemetry-otlp = { workspace = true, features = ["metrics", "grpc-tonic"] } +opentelemetry_sdk = { workspace = true, features = ["rt-tokio", "metrics"] } prometheus-client = { workspace = true } tokio = { workspace = true, features = ["full"] } tracing = { workspace = true } -tracing-opentelemetry = "0.28" +tracing-opentelemetry = { workspace = true } tracing-subscriber = { workspace = true, features = ["env-filter"] } [lints] diff --git a/examples/metrics/src/main.rs b/examples/metrics/src/main.rs index 0802d24c17c..46c1503eefd 100644 --- a/examples/metrics/src/main.rs +++ b/examples/metrics/src/main.rs @@ -33,7 +33,7 @@ use libp2p::{ }; use opentelemetry::{KeyValue, trace::TracerProvider as _}; use opentelemetry_otlp::SpanExporter; -use opentelemetry_sdk::{runtime, trace::TracerProvider}; +use opentelemetry_sdk::trace::SdkTracerProvider; use prometheus_client::registry::Registry; use tracing_subscriber::{EnvFilter, Layer, layer::SubscriberExt, util::SubscriberInitExt}; @@ -93,15 +93,13 @@ async fn main() -> Result<(), Box> { } fn setup_tracing() -> Result<(), Box> { - let provider = TracerProvider::builder() - .with_batch_exporter( - SpanExporter::builder().with_tonic().build()?, - runtime::Tokio, + let provider = SdkTracerProvider::builder() + .with_batch_exporter(SpanExporter::builder().with_tonic().build()?) + .with_resource( + opentelemetry_sdk::Resource::builder_empty() + .with_attribute(KeyValue::new("service.name", "libp2p")) + .build(), ) - .with_resource(opentelemetry_sdk::Resource::new(vec![KeyValue::new( - "service.name", - "libp2p", - )])) .build(); tracing_subscriber::registry() .with(tracing_subscriber::fmt::layer().with_filter(EnvFilter::from_default_env()))