From 82b0f2d3632cba0243a2f942e7c11221fec62d86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E8=BF=90=E5=AE=B6?= Date: Thu, 31 Oct 2024 20:21:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9A=82=E6=97=B6=E6=94=BE=E5=BC=80request=20i?= =?UTF-8?q?d?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/src/lib.rs | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/server/src/lib.rs b/server/src/lib.rs index 5cc630f..62eba49 100644 --- a/server/src/lib.rs +++ b/server/src/lib.rs @@ -31,17 +31,17 @@ pub async fn serve() { fn init() -> Router { let auth: Router = library::typed_router::get_router(); - // let trace_layer = TraceLayer::new_for_http().make_span_with(|request: &Request| { - // let req_id = match request - // .headers() - // .get("x-request-id") - // .and_then(|value| value.to_str().ok()) - // { - // Some(v) if v.chars().all(|c| c.is_alphanumeric()) => v.to_string(),// 确保请求ID只包含字母和数字 - // _ => panic!("无效的请求ID"), - // }; - // tracing::error_span!("request_id", id = req_id) - // }); + let trace_layer = TraceLayer::new_for_http().make_span_with(|request: &Request| { + let req_id = match request + .headers() + .get("x-request-id") + .and_then(|value| value.to_str().ok()) + { + Some(v) if v.chars().all(|c| c.is_alphanumeric()) => v.to_string(),// 确保请求ID只包含字母和数字 + _ => panic!("无效的请求ID"), + }; + tracing::error_span!("request_id", id = req_id) + }); // 配置路由 // layer之间存在顺序依赖,勿改。layer执行顺序和配置顺序一致 @@ -51,7 +51,7 @@ fn init() -> Router { .nest(&config!().server.prefix_url, auth) .layer( ServiceBuilder::new() - // .layer(trace_layer) + .layer(trace_layer) .layer(axum::middleware::from_fn( library::middleware::req_id::handle, ))