File tree Expand file tree Collapse file tree
axum-tracing-opentelemetry/src/middleware
tonic-tracing-opentelemetry/src/middleware Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -138,7 +138,7 @@ where
138138 }
139139
140140 fn call ( & mut self , req : Request < B > ) -> Self :: Future {
141- use tracing_opentelemetry:: OpenTelemetrySpanExt ;
141+ use tracing_opentelemetry:: { OpenTelemetrySpanExt , SetParentError } ;
142142 let req = req;
143143 let span = if self . filter . is_none_or ( |f| f ( req. uri ( ) . path ( ) ) ) {
144144 let route = http_route ( & req) ;
@@ -162,7 +162,12 @@ where
162162 span. record ( CLIENT_ADDRESS , client_ip) ;
163163 }
164164 if let Err ( error) = span. set_parent ( otel_http:: extract_context ( req. headers ( ) ) ) {
165- tracing:: warn!( ?error, "can not set parent trace_id to span" ) ;
165+ match error {
166+ SetParentError :: LayerNotFound | SetParentError :: AlreadyStarted => {
167+ tracing:: warn!( ?error, "can not set parent trace_id to span" ) ;
168+ }
169+ SetParentError :: SpanDisabled => { }
170+ }
166171 }
167172 span
168173 } else {
Original file line number Diff line number Diff line change 7272 }
7373
7474 fn call ( & mut self , req : Request < B > ) -> Self :: Future {
75- use tracing_opentelemetry:: OpenTelemetrySpanExt ;
75+ use tracing_opentelemetry:: { OpenTelemetrySpanExt , SetParentError } ;
7676 // This is necessary because tonic internally uses `tower::buffer::Buffer`.
7777 // See https://github.com/tower-rs/tower/issues/547#issuecomment-767629149
7878 // for details on why this is necessary
8282 let span = if self . filter . is_none_or ( |f| f ( req. uri ( ) . path ( ) ) ) {
8383 let span = otel_http:: grpc_server:: make_span_from_request ( & req) ;
8484 if let Err ( error) = span. set_parent ( otel_http:: extract_context ( req. headers ( ) ) ) {
85- tracing:: warn!( ?error, "can not set parent trace_id to span" ) ;
85+ match error {
86+ SetParentError :: LayerNotFound | SetParentError :: AlreadyStarted => {
87+ tracing:: warn!( ?error, "can not set parent trace_id to span" ) ;
88+ }
89+ SetParentError :: SpanDisabled => { }
90+ }
8691 }
8792 span
8893 } else {
You can’t perform that action at this time.
0 commit comments