Skip to content

Commit

Permalink
Fix docs
Browse files Browse the repository at this point in the history
  • Loading branch information
mrsarm committed Aug 13, 2023
1 parent 783567f commit 46d8b5c
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 13 deletions.
36 changes: 25 additions & 11 deletions README.md
Expand Up @@ -10,7 +10,7 @@ but it allows to choose the logging level depending on the HTTP status code resp
and by default server errors are logged with `ERROR` level.

Moreover, error in response log are also configurable, and by default logged as `ERROR`
in server side responses.
in server side failures.

The Logger middleware uses the standard log crate to log information. You should enable logger for
`http_logger` to see access log ([`env_logger`](https://docs.rs/env_logger) or similar).
Expand All @@ -22,19 +22,33 @@ HTTP 404 responses (Not Found), and for the rest `INFO` level:

```rust
use actix_contrib_logger::middleware::Logger;
use env_logger::Env;
use http::StatusCode;
use log::Level;

let logger = Logger::default()
.custom_level(|status| {
if status.is_server_error() {
Level::Error
} else if status == StatusCode::NOT_FOUND {
Level::Warn
} else {
Level::Info
}
});
#[actix_web::main]
async fn main() -> std::io::Result<()> {
use actix_web::{App, HttpServer};

env_logger::init_from_env(Env::default().default_filter_or("info"));

HttpServer::new(|| {
let logger = Logger::default()
.custom_level(|status| {
if status.is_server_error() {
Level::Error
} else if status == StatusCode::NOT_FOUND {
Level::Warn
} else {
Level::Info
}
});
App::new().wrap(logger)
})
.bind(("127.0.0.1", 8080))?
.run()
.await
}
```

Requests logs will look like:
Expand Down
5 changes: 3 additions & 2 deletions src/middleware/logger.rs
Expand Up @@ -39,7 +39,7 @@ use http::{HeaderName, StatusCode};
/// and by default server errors are logged with `ERROR` level.
///
/// Moreover, error in response log are also configurable, and by default logged as `ERROR`
/// in server side responses.
/// in server side failures.
///
/// This middleware uses the `log` crate to output information. Enable `log`'s output for the
/// "http_logger" scope using [`env_logger`](https://docs.rs/env_logger) or similar crate.
Expand All @@ -58,9 +58,10 @@ use http::{HeaderName, StatusCode};
/// ```
/// use actix_web::App;
/// use actix_contrib_logger::middleware::Logger;
/// use env_logger::Env;
///
/// // access logs are printed with the INFO level so ensure it is enabled by default
/// env_logger::init_from_env(env_logger::Env::new().default_filter_or("info"));
/// env_logger::init_from_env(Env::new().default_filter_or("info"));
///
/// let app = App::new()
/// // .wrap(Logger::default())
Expand Down

0 comments on commit 46d8b5c

Please sign in to comment.