From c5ea875f544824b0c042bf7c0a58b3134f9c0373 Mon Sep 17 00:00:00 2001 From: rtkay123 Date: Tue, 12 Aug 2025 05:13:32 +0200 Subject: feat(config): get active routing --- crates/configuration/src/server/interceptor.rs | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 crates/configuration/src/server/interceptor.rs (limited to 'crates/configuration/src/server/interceptor.rs') diff --git a/crates/configuration/src/server/interceptor.rs b/crates/configuration/src/server/interceptor.rs new file mode 100644 index 0000000..eeb36c2 --- /dev/null +++ b/crates/configuration/src/server/interceptor.rs @@ -0,0 +1,23 @@ +use tonic::{Status, service::Interceptor}; +use tracing::Span; +use warden_stack::{ + opentelemetry::global, tracing::telemetry::tonic::extractor, + tracing_opentelemetry::OpenTelemetrySpanExt, +}; + +#[derive(Clone, Copy)] +pub struct MyInterceptor; + +impl Interceptor for MyInterceptor { + fn call(&mut self, request: tonic::Request<()>) -> Result, Status> { + let span = Span::current(); + + let cx = global::get_text_map_propagator(|propagator| { + propagator.extract(&extractor::MetadataMap(request.metadata())) + }); + + span.set_parent(cx); + + Ok(request) + } +} -- cgit v1.2.3