diff --git a/casper-server/src/middleware/trace.rs b/casper-server/src/middleware/trace.rs index 1729b5d8..d110a8ca 100644 --- a/casper-server/src/middleware/trace.rs +++ b/casper-server/src/middleware/trace.rs @@ -1,13 +1,13 @@ -use std::error::Error; +// use std::error::Error; use std::future::Future; use std::pin::Pin; use std::task::{Context, Poll}; -use ntex::http::body::{Body, BodySize, MessageBody, ResponseBody}; +// use ntex::http::body::{Body, BodySize, MessageBody, ResponseBody}; use ntex::service::{ forward_poll_ready, forward_poll_shutdown, Middleware, Service, ServiceCall, ServiceCtx, }; -use ntex::util::Bytes; +// use ntex::util::Bytes; use ntex::web::{ErrorRenderer, WebRequest, WebResponse}; use opentelemetry::trace::TraceContextExt as _; @@ -68,7 +68,7 @@ where req.host = %connection_info.host(), req.peer_addr = %req.peer_addr().map(|addr| addr.to_string()).unwrap_or_default(), resp.status_code = Empty, - otel.name = %format!("HTTP {} {}", req.method(), req.uri()), + otel.name = %format!("HTTP {} {}", req.method(), req.uri().path()), otel.kind = "server", otel.status_code = Empty, trace_id = Empty, @@ -131,6 +131,8 @@ where this.span.in_scope(move || { let res = futures::ready!(this.fut.poll(cx)); + // span.context().span().end(); + // Request is done match res { Ok(ref response) => { @@ -147,32 +149,7 @@ where span.record("otel.status_code", "ERROR"); } } - - Poll::Ready(res.map(|response| { - response.map_body(move |_, body| { - ResponseBody::Other(Body::from_message(StreamSpan { body, span })) - }) - })) + Poll::Ready(res) }) } } - -struct StreamSpan { - body: ResponseBody, - span: Span, -} - -impl MessageBody for StreamSpan { - #[inline] - fn size(&self) -> BodySize { - self.body.size() - } - - #[inline] - fn poll_next_chunk( - &mut self, - cx: &mut Context<'_>, - ) -> Poll>>> { - self.span.in_scope(|| self.body.poll_next_chunk(cx)) - } -}