diff --git a/Cargo.lock b/Cargo.lock index 3daea4f8fdc..513bdcd6045 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -262,7 +262,7 @@ dependencies = [ "multer", "num-traits", "once_cell", - "opentelemetry", + "opentelemetry 0.23.0", "pin-project-lite", "regex", "serde", @@ -563,7 +563,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" dependencies = [ "async-trait", - "axum-core", + "axum-core 0.3.4", "bitflags 1.3.2", "bytes", "futures-util", @@ -584,6 +584,33 @@ dependencies = [ "tower-service", ] +[[package]] +name = "axum" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf" +dependencies = [ + "async-trait", + "axum-core 0.4.3", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "sync_wrapper 1.0.1", + "tower", + "tower-layer", + "tower-service", +] + [[package]] name = "axum-core" version = "0.3.4" @@ -601,6 +628,26 @@ dependencies = [ "tower-service", ] +[[package]] +name = "axum-core" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "mime", + "pin-project-lite", + "rustversion", + "sync_wrapper 0.1.2", + "tower-layer", + "tower-service", +] + [[package]] name = "backtrace" version = "0.3.73" @@ -1135,7 +1182,7 @@ dependencies = [ "bitflags 1.3.2", "crossterm_winapi", "libc", - "mio 0.8.11", + "mio", "parking_lot", "signal-hook", "signal-hook-mio", @@ -2067,6 +2114,25 @@ dependencies = [ "tracing", ] +[[package]] +name = "h2" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" +dependencies = [ + "atomic-waker", + "bytes", + "fnv", + "futures-core", + "futures-sink", + "http 1.1.0", + "indexmap 2.4.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + [[package]] name = "half" version = "2.4.1" @@ -2369,7 +2435,7 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2", + "h2 0.3.26", "http 0.2.12", "http-body 0.4.6", "httparse", @@ -2392,9 +2458,11 @@ dependencies = [ "bytes", "futures-channel", "futures-util", + "h2 0.4.6", "http 1.1.0", "http-body 1.0.0", "httparse", + "httpdate", "itoa", "pin-project-lite", "smallvec", @@ -2463,6 +2531,19 @@ dependencies = [ "tokio-io-timeout", ] +[[package]] +name = "hyper-timeout" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3203a961e5c83b6f5498933e78b6b263e208c197b63e9c6c53cc82ffd3f63793" +dependencies = [ + "hyper 1.4.0", + "hyper-util", + "pin-project-lite", + "tokio", + "tower-service", +] + [[package]] name = "hyper-util" version = "0.1.7" @@ -3170,18 +3251,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "mio" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4569e456d394deccd22ce1c1913e6ea0e54519f577285001215d33557431afe4" -dependencies = [ - "hermit-abi 0.3.9", - "libc", - "wasi", - "windows-sys 0.52.0", -] - [[package]] name = "moka" version = "0.12.8" @@ -3439,13 +3508,40 @@ dependencies = [ ] [[package]] -name = "opentelemetry-appender-tracing" -version = "0.4.0" +name = "opentelemetry" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be314095f27dde46fca7038b023457d2b3459e1c39033dacc2ec1b31df11a61c" +checksum = "4c365a63eec4f55b7efeceb724f1336f26a9cf3427b70e59e2cd2a5b947fba96" dependencies = [ + "futures-core", + "futures-sink", + "js-sys", "once_cell", - "opentelemetry", + "pin-project-lite", + "thiserror", +] + +[[package]] +name = "opentelemetry" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "803801d3d3b71cd026851a53f974ea03df3d179cb758b260136a6c9e22e196af" +dependencies = [ + "futures-core", + "futures-sink", + "js-sys", + "once_cell", + "pin-project-lite", + "thiserror", +] + +[[package]] +name = "opentelemetry-appender-tracing" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11338a346937cdcce64971604422817318c1301145ca845e01c21bb21824b007" +dependencies = [ + "opentelemetry 0.25.0", "tracing", "tracing-core", "tracing-subscriber", @@ -3453,76 +3549,76 @@ dependencies = [ [[package]] name = "opentelemetry-http" -version = "0.12.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0ba633e55c5ea6f431875ba55e71664f2fa5d3a90bd34ec9302eecc41c865dd" +checksum = "88d8c2b76e5f7848a289aa9666dbe56b16f8a22a4c5246ef37a14941818d2913" dependencies = [ "async-trait", "bytes", - "http 0.2.12", - "opentelemetry", + "http 1.1.0", + "opentelemetry 0.25.0", ] [[package]] name = "opentelemetry-otlp" -version = "0.16.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a94c69209c05319cdf7460c6d4c055ed102be242a0a6245835d7bc42c6ec7f54" +checksum = "596b1719b3cab83addb20bcbffdf21575279d9436d9ccccfe651a3bf0ab5ab06" dependencies = [ "async-trait", "futures-core", - "http 0.2.12", - "opentelemetry", + "http 1.1.0", + "opentelemetry 0.25.0", "opentelemetry-proto", - "opentelemetry_sdk", - "prost 0.12.6", + "opentelemetry_sdk 0.25.0", + "prost 0.13.1", "thiserror", "tokio", - "tonic 0.11.0", + "tonic 0.12.1", ] [[package]] name = "opentelemetry-prometheus" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e1a24eafe47b693cb938f8505f240dc26c71db60df9aca376b4f857e9653ec7" +checksum = "cc4191ce34aa274621861a7a9d68dbcf618d5b6c66b10081631b61fd81fbc015" dependencies = [ "once_cell", - "opentelemetry", - "opentelemetry_sdk", + "opentelemetry 0.24.0", + "opentelemetry_sdk 0.24.1", "prometheus", "protobuf 2.28.0", ] [[package]] name = "opentelemetry-proto" -version = "0.6.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "984806e6cf27f2b49282e2a05e288f30594f3dbc74eb7a6e99422bc48ed78162" +checksum = "2c43620e8f93359eb7e627a3b16ee92d8585774986f24f2ab010817426c5ce61" dependencies = [ - "opentelemetry", - "opentelemetry_sdk", - "prost 0.12.6", - "tonic 0.11.0", + "opentelemetry 0.25.0", + "opentelemetry_sdk 0.25.0", + "prost 0.13.1", + "tonic 0.12.1", ] [[package]] name = "opentelemetry-semantic-conventions" -version = "0.15.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1869fb4bb9b35c5ba8a1e40c9b128a7b4c010d07091e864a29da19e4fe2ca4d7" +checksum = "9b8e442487022a943e2315740e443dc5ee95fd541c18f509a5a6251b408a9f95" [[package]] name = "opentelemetry-stdout" -version = "0.4.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6d080bf06af02b738feb2e6830cf72c30b76ca18b40f555cdf1b53e7b491bfe" +checksum = "f76e2ded3f6e5d8b51e7aefc267022e7586975c00763aab70f807ad2cc156e94" dependencies = [ "async-trait", "chrono", "futures-util", - "opentelemetry", - "opentelemetry_sdk", + "opentelemetry 0.25.0", + "opentelemetry_sdk 0.25.0", "ordered-float 4.2.0", "serde", "serde_json", @@ -3538,7 +3634,7 @@ dependencies = [ "eyre", "indexmap 1.9.3", "nvml-wrapper", - "opentelemetry", + "opentelemetry 0.23.0", "sysinfo 0.29.11", "tracing", ] @@ -3549,7 +3645,6 @@ version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae312d58eaa90a82d2e627fd86e075cf5230b3f11794e2ed74199ebbe572d4fd" dependencies = [ - "async-std", "async-trait", "futures-channel", "futures-executor", @@ -3557,10 +3652,45 @@ dependencies = [ "glob", "lazy_static", "once_cell", - "opentelemetry", + "opentelemetry 0.23.0", "ordered-float 4.2.0", "percent-encoding", "rand", + "thiserror", +] + +[[package]] +name = "opentelemetry_sdk" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "692eac490ec80f24a17828d49b40b60f5aeaccdfe6a503f939713afd22bc28df" +dependencies = [ + "async-trait", + "futures-channel", + "futures-executor", + "futures-util", + "glob", + "once_cell", + "opentelemetry 0.24.0", + "thiserror", +] + +[[package]] +name = "opentelemetry_sdk" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0da0d6b47a3dbc6e9c9e36a0520e25cf943e046843818faaa3f87365a548c82" +dependencies = [ + "async-std", + "async-trait", + "futures-channel", + "futures-executor", + "futures-util", + "glob", + "once_cell", + "opentelemetry 0.25.0", + "percent-encoding", + "rand", "serde_json", "thiserror", "tokio", @@ -4516,7 +4646,7 @@ dependencies = [ "encoding_rs", "futures-core", "futures-util", - "h2", + "h2 0.3.26", "http 0.2.12", "http-body 0.4.6", "hyper 0.14.30", @@ -4776,6 +4906,7 @@ version = "0.23.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c58f8c84392efc0a126acce10fa59ff7b3d2ac06ab451a33f2741989b806b044" dependencies = [ + "log", "once_cell", "ring", "rustls-pki-types", @@ -5190,7 +5321,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "29ad2e15f37ec9a6cc544097b78a1ec90001e9f71b81338ca39f430adaca99af" dependencies = [ "libc", - "mio 0.8.11", + "mio", "signal-hook", ] @@ -5503,7 +5634,7 @@ dependencies = [ "num", "num_cpus", "once_cell", - "opentelemetry", + "opentelemetry 0.25.0", "opentelemetry-appender-tracing", "opentelemetry-http", "opentelemetry-otlp", @@ -5511,7 +5642,7 @@ dependencies = [ "opentelemetry-semantic-conventions", "opentelemetry-stdout", "opentelemetry-system-metrics", - "opentelemetry_sdk", + "opentelemetry_sdk 0.25.0", "path-clean", "pathdiff", "phonenumber", @@ -5709,11 +5840,11 @@ dependencies = [ "hyper 0.14.30", "hyper-util", "once_cell", - "opentelemetry", + "opentelemetry 0.25.0", "opentelemetry-http", "opentelemetry-otlp", "opentelemetry-semantic-conventions", - "opentelemetry_sdk", + "opentelemetry_sdk 0.25.0", "prost 0.12.6", "prost-types 0.12.6", "protoc-bin-vendored", @@ -5936,20 +6067,21 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.39.3" +version = "1.38.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9babc99b9923bfa4804bd74722ff02c0381021eafa4db9949217e3be8e84fff5" +checksum = "eb2caba9f80616f438e09748d5acda951967e1ea58508ef53d9c6402485a46df" dependencies = [ "backtrace", "bytes", "libc", - "mio 1.0.1", + "mio", + "num_cpus", "parking_lot", "pin-project-lite", "signal-hook-registry", "socket2 0.5.7", "tokio-macros", - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] @@ -5964,9 +6096,9 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.4.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" +checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ "proc-macro2", "quote", @@ -6078,22 +6210,18 @@ checksum = "76c4eb7a4e9ef9d4763600161f12f5070b92a578e1b634db88a6887844c91a13" dependencies = [ "async-stream", "async-trait", - "axum", + "axum 0.6.20", "base64 0.21.7", "bytes", - "h2", + "h2 0.3.26", "http 0.2.12", "http-body 0.4.6", "hyper 0.14.30", - "hyper-timeout", + "hyper-timeout 0.4.1", "percent-encoding", "pin-project", "prost 0.12.6", - "rustls-native-certs", - "rustls-pemfile 2.1.2", - "rustls-pki-types", "tokio", - "tokio-rustls 0.25.0", "tokio-stream", "tower", "tower-layer", @@ -6107,14 +6235,28 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38659f4a91aba8598d27821589f5db7dddd94601e7a01b1e485a50e5484c7401" dependencies = [ + "async-stream", + "async-trait", + "axum 0.7.5", "base64 0.22.1", "bytes", + "h2 0.4.6", "http 1.1.0", "http-body 1.0.0", "http-body-util", + "hyper 1.4.0", + "hyper-timeout 0.5.1", + "hyper-util", "percent-encoding", "pin-project", + "prost 0.13.1", + "rustls-native-certs", + "rustls-pemfile 2.1.2", + "socket2 0.5.7", + "tokio", + "tokio-rustls 0.26.0", "tokio-stream", + "tower", "tower-layer", "tower-service", "tracing", @@ -6170,7 +6312,7 @@ dependencies = [ "http 0.2.12", "http-body 0.4.6", "hyper 0.14.30", - "opentelemetry", + "opentelemetry 0.23.0", "pin-project-lite", "tonic 0.11.0", "tower", @@ -6273,8 +6415,8 @@ checksum = "f68803492bf28ab40aeccaecc7021096bd256baf7ca77c3d425d89b35a7be4e4" dependencies = [ "js-sys", "once_cell", - "opentelemetry", - "opentelemetry_sdk", + "opentelemetry 0.23.0", + "opentelemetry_sdk 0.23.0", "smallvec", "tracing", "tracing-core", diff --git a/Cargo.toml b/Cargo.toml index b387d921acb..3d3d77ed5d0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -43,7 +43,7 @@ rustls = { version = "0.23.5", optional = true, features = [ ], default-features = false } rustls-pki-types = "1.5.0" inquire = { version = "0.7.5", optional = true } -opentelemetry-otlp = { version = "0.16.0", features = [ +opentelemetry-otlp = { version = "0.25.0", features = [ "trace", "logs", "metrics", @@ -120,21 +120,21 @@ tracing-opentelemetry = "0.24.0" getrandom = { version = "0.2.14", features = ["js"] } prometheus = "0.13.4" tonic = { version = "0.11.0", default-features = false } -opentelemetry-semantic-conventions = "0.15.0" -opentelemetry = { version = "0.23.0", features = ["trace", "logs", "metrics"] } -opentelemetry_sdk = { version = "0.23.0", features = [ +opentelemetry-semantic-conventions = "0.25.0" +opentelemetry = { version = "0.25.0", features = ["trace", "logs", "metrics"] } +opentelemetry_sdk = { version = "0.25.0", features = [ "trace", "logs", "metrics", ] } -opentelemetry-http = "0.12.0" -opentelemetry-stdout = { version = "0.4.0", features = [ +opentelemetry-http = "0.25.0" +opentelemetry-stdout = { version = "0.25.0", features = [ "trace", "logs", "metrics", ] } -opentelemetry-appender-tracing = { version = "0.4.0" } -opentelemetry-prometheus = "0.16.0" +opentelemetry-appender-tracing = { version = "0.25.0" } +opentelemetry-prometheus = "0.17.0" phonenumber = "0.3.4" chrono = "0.4.38" async-graphql-extension-apollo-tracing = { version = "3.2.15" } diff --git a/tailcall-upstream-grpc/Cargo.toml b/tailcall-upstream-grpc/Cargo.toml index 8bab51007b3..f94eb0d2fe2 100644 --- a/tailcall-upstream-grpc/Cargo.toml +++ b/tailcall-upstream-grpc/Cargo.toml @@ -18,11 +18,11 @@ hyper-util = { version = "0.1.3", features = ["tokio"] } http-body-util = "0.1.1" once_cell = "1.19.0" tonic-tracing-opentelemetry = "0.19.0" -opentelemetry = { version = "0.23.0", features = ["trace"] } -opentelemetry_sdk = { version = "0.23.0", features = ["trace", "rt-tokio"] } -opentelemetry-semantic-conventions = "0.15.0" -opentelemetry-http = "0.12.0" -opentelemetry-otlp = { version = "0.16.0", features = [ +opentelemetry = { version = "0.25.0", features = ["trace"] } +opentelemetry_sdk = { version = "0.25.0", features = ["trace", "rt-tokio"] } +opentelemetry-semantic-conventions = "0.25.0" +opentelemetry-http = "0.25.0" +opentelemetry-otlp = { version = "0.25.0", features = [ "trace", # required to make grpc requests "tls-roots",