Is there a way to log all requests being received by actix-web irrespective of whether the endpoint exists or not?
It seems I need to use middleware for this, is this the recommended approach?
Is there a way to log all requests being received by actix-web irrespective of whether the endpoint exists or not?
It seems I need to use middleware for this, is this the recommended approach?
There is logging middleware available as part of actix_web
: actix_web::middleware::Logger
Middleware
for logging request and response info to the terminal.Logger
middleware uses standardlog
crate to log information.
Middleware is called for each request (so long no other middleware or route handles it beforehand), so putting it on your App
at the top level should get all requests, whether the endpoint exists or not.
use actix_web::{middleware::Logger, App};
let app = App::new()
.wrap(Logger::default())
// ...
log
crate just provides a facade and you need to initialize a logging implementation of your choosing based on where and how the log messages should be sent. Env-logger is a common one but others can be seen at: available logging implementations. –
Tumefy ERROR
severity. –
Heraclid © 2022 - 2024 — McMap. All rights reserved.
env_logger::init_from_env(env_logger::Env::new().default_filter_or("info"));
– Ser