diff --git a/Cargo.lock b/Cargo.lock index 70bf6e7..3e8c5ec 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -825,6 +825,16 @@ dependencies = [ "pollster", ] +[[package]] +name = "fastrace-reqwest" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4705b6c98308ef10f178dadc516a460ca9191c0e1c6e07c73104c9679e82d4e" +dependencies = [ + "fastrace", + "reqwest", +] + [[package]] name = "fastrand" version = "2.3.0" @@ -2470,6 +2480,7 @@ dependencies = [ name = "percas-client" version = "0.3.0" dependencies = [ + "fastrace-reqwest", "murmur3", "reqwest", "serde", diff --git a/Cargo.toml b/Cargo.toml index 6f628bf..a47e8a5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -59,6 +59,7 @@ exn = { version = "0.1.2" } fastimer = { version = "0.10.0" } fastrace = { version = "0.7.9" } fastrace-opentelemetry = { version = "0.14.0" } +fastrace-reqwest = { version = "0.2.0" } foyer = { version = "0.20.0", features = ["nightly"] } futures-util = { version = "0.3.31" } gix-discover = { version = "0.41.0" } diff --git a/client/Cargo.toml b/client/Cargo.toml index ec35ae8..41d6782 100644 --- a/client/Cargo.toml +++ b/client/Cargo.toml @@ -31,6 +31,7 @@ sign-tag = true tag-message = "chore: Release {{crate_name}} version {{version}}" [dependencies] +fastrace-reqwest = { workspace = true } murmur3 = { workspace = true } reqwest = { workspace = true } serde = { workspace = true } diff --git a/client/src/client.rs b/client/src/client.rs index df003b6..7db128c 100644 --- a/client/src/client.rs +++ b/client/src/client.rs @@ -16,6 +16,7 @@ use std::sync::RwLock; use std::time::Duration; use std::time::Instant; +use fastrace_reqwest::traceparent_headers; use reqwest::StatusCode; use reqwest::Url; use reqwest::redirect::Policy; @@ -116,6 +117,7 @@ impl Client { let resp = self .client .get(url) + .headers(traceparent_headers()) .send() .await .map_err(make_opaque_error)?; @@ -140,6 +142,7 @@ impl Client { let resp = self .client .put(url) + .headers(traceparent_headers()) .body(value.to_vec()) .send() .await @@ -161,6 +164,7 @@ impl Client { let resp = self .client .delete(url) + .headers(traceparent_headers()) .send() .await .map_err(make_opaque_error)?; @@ -179,6 +183,7 @@ impl Client { let resp = self .client .get(url) + .headers(traceparent_headers()) .send() .await .map_err(make_opaque_error)?; @@ -224,6 +229,7 @@ impl Client { let resp = self .client .get(url) + .headers(traceparent_headers()) .send() .await .map_err(make_opaque_error)?;