Skip to content

Commit d97f836

Browse files
committed
Update tracing middleware
1 parent fd86fb5 commit d97f836

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

engine/src/middlewares/tracing.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
use std::sync::Arc;
22

3-
use color_eyre::SectionExt;
43
use opentelemetry::{
54
global,
65
trace::{FutureExt, Span, SpanKind, TraceContextExt, Tracer},
@@ -17,7 +16,8 @@ use poem::{
1716
},
1817
Endpoint, FromRequest, IntoResponse, PathPattern, Request, Response, Result,
1918
};
20-
use tracing_opentelemetry;
19+
use tracing::{info_span, Instrument};
20+
use tracing_opentelemetry::{self, OpenTelemetrySpanExt};
2121

2222
/// Middleware that injects the OpenTelemetry trace ID into the response headers.
2323
#[derive(Default)]
@@ -108,16 +108,15 @@ where
108108

109109
span.add_event("request.started".to_string(), vec![]);
110110

111+
let tracing_span = info_span!("request.started");
112+
let parent_context = Context::current_with_span(span);
113+
tracing_span.set_parent(parent_context.clone());
114+
111115
async move {
112116
let res = self.inner.call(req).await;
113117
let cx = Context::current();
114118
let span = cx.span();
115119

116-
let guard = tracing_opentelemetry::OpenTelemetrySpanExt::set_parent(
117-
&tracing::span::Span::current(),
118-
cx.clone()
119-
);
120-
121120
match res {
122121
Ok(resp) => {
123122
let mut resp = resp.into_response();
@@ -184,7 +183,8 @@ where
184183
}
185184
}
186185
}
187-
.with_context(Context::current_with_span(span))
186+
.with_context(parent_context)
187+
.instrument(tracing_span)
188188
.await
189189
}
190190
}

0 commit comments

Comments
 (0)