From e6b5cb75ba69f0bfc0ac17d2a23752c2186190a2 Mon Sep 17 00:00:00 2001 From: stefiosif Date: Mon, 27 Apr 2026 21:59:07 +0300 Subject: [PATCH] chore: add TraceLayer for per-request method and path logging --- backend/Cargo.lock | 4 ++-- backend/Cargo.toml | 6 +++--- backend/src/main.rs | 5 +++-- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/backend/Cargo.lock b/backend/Cargo.lock index 06ab043..c6fe384 100644 --- a/backend/Cargo.lock +++ b/backend/Cargo.lock @@ -1313,9 +1313,9 @@ dependencies = [ [[package]] name = "tokio" -version = "1.51.1" +version = "1.52.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f66bf9585cda4b724d3e78ab34b73fb2bbaba9011b9bfdf69dc836382ea13b8c" +checksum = "b67dee974fe86fd92cc45b7a95fdd2f99a36a6d7b0d431a231178d3d670bbcc6" dependencies = [ "bytes", "libc", diff --git a/backend/Cargo.toml b/backend/Cargo.toml index 9f4b617..edab754 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -5,11 +5,11 @@ edition = "2024" [dependencies] anyhow = "1.0.102" -axum = { version = "0.8.9", features = [] } +axum = { version = "0.8.9", features = ["tracing"] } serde = { version = "1.0.228", features = ["derive"] } serde_json = "1.0.149" -tokio = { version = "1.51.0", features = ["full"] } -tower-http = { version = "0.6.8", features = ["fs"] } +tokio = { version = "1.52.1", features = ["full"] } +tower-http = { version = "0.6.8", features = ["fs", "trace"] } tower-cookies = "0.11.0" tracing = "0.1.44" tracing-subscriber = { version = "0.3.23", features = ["env-filter"] } diff --git a/backend/src/main.rs b/backend/src/main.rs index 0e92399..2e1ec9c 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -6,7 +6,7 @@ mod web; use anyhow::Result; use axum::{Router, middleware, response::Response}; use tower_cookies::CookieManagerLayer; -use tower_http::services::ServeDir; +use tower_http::{services::ServeDir, trace::TraceLayer}; use tracing::info; use tracing_subscriber::{layer::SubscriberExt, util::SubscriberInitExt}; @@ -25,7 +25,7 @@ async fn main() -> Result<()> { tracing_subscriber::registry() .with( tracing_subscriber::EnvFilter::try_from_default_env().unwrap_or_else(|_| { - format!("{}=info,tower_http=info", env!("CARGO_CRATE_NAME")).into() + format!("{}=info,tower_http=debug", env!("CARGO_CRATE_NAME")).into() }), ) .with(tracing_subscriber::fmt::layer()) @@ -40,6 +40,7 @@ async fn main() -> Result<()> { .nest("/api", routes_file) .merge(routes_health()) .merge(routes_login()) + .layer(TraceLayer::new_for_http()) .layer(middleware::map_response(main_response_mapper)) .layer(middleware::from_fn_with_state( file_controller,