diff options
author | rtkay123 <dev@kanjala.com> | 2025-08-12 14:00:28 +0200 |
---|---|---|
committer | rtkay123 <dev@kanjala.com> | 2025-08-12 14:00:28 +0200 |
commit | 1d347dd2142a266552812ac2f8844acf52d2dc1c (patch) | |
tree | 70beaeb0bf572b9ef7323cc98b7b52084011d2d8 /crates/configuration/src/server/grpc_svc.rs | |
parent | c5ea875f544824b0c042bf7c0a58b3134f9c0373 (diff) | |
download | warden-1d347dd2142a266552812ac2f8844acf52d2dc1c.tar.bz2 warden-1d347dd2142a266552812ac2f8844acf52d2dc1c.zip |
feat(config): reload config
Diffstat (limited to 'crates/configuration/src/server/grpc_svc.rs')
-rw-r--r-- | crates/configuration/src/server/grpc_svc.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/crates/configuration/src/server/grpc_svc.rs b/crates/configuration/src/server/grpc_svc.rs new file mode 100644 index 0000000..42aa871 --- /dev/null +++ b/crates/configuration/src/server/grpc_svc.rs @@ -0,0 +1,24 @@ +pub mod interceptor { + use opentelemetry::global; + use tonic::{Status, service::Interceptor}; + use tracing::Span; + use tracing_opentelemetry::OpenTelemetrySpanExt; + use warden_stack::tracing::telemetry::tonic::extractor; + + #[derive(Clone, Copy)] + pub struct MyInterceptor; + + impl Interceptor for MyInterceptor { + fn call(&mut self, request: tonic::Request<()>) -> Result<tonic::Request<()>, 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) + } + } +} |