[][src]Struct actix_web::middleware::Logger

pub struct Logger { /* fields omitted */ }

Middleware for logging request and response info to the terminal.

Logger middleware uses standard log crate to log information. You should enable logger for actix_web package to see access log. (env_logger or similar)

Usage

Create Logger middleware with the specified format. Default Logger could be created with default method, it uses the default format:

This example is not tested
 %a "%r" %s %b "%{Referer}i" "%{User-Agent}i" %T
extern crate env_logger;
use actix_web::middleware::Logger;
use actix_web::App;

fn main() {
    std::env::set_var("RUST_LOG", "actix_web=info");
    env_logger::init();

    let app = App::new()
        .middleware(Logger::default())
        .middleware(Logger::new("%a %{User-Agent}i"))
        .finish();
}

Format

%% The percent sign

%a Remote IP-address (IP-address of proxy if using reverse proxy)

%t Time when the request was started to process

%r First line of request

%s Response status code

%b Size of response in bytes, including HTTP headers

%T Time taken to serve the request, in seconds with floating fraction in .06f format

%D Time taken to serve the request, in milliseconds

%{FOO}i request.headers['FOO']

%{FOO}o response.headers['FOO']

%{FOO}e os.environ['FOO']

Methods

impl Logger
[src]

Create Logger middleware with the specified format.

Ignore and do not log access info for specified path.

Trait Implementations

impl<S> Middleware<S> for Logger
[src]

Method is called when request is ready. It may return future, which should resolve before next middleware get called. Read more

Method is called after body stream get sent to peer.

Method is called when handler returns response, but before sending http message to peer. Read more

impl Default for Logger
[src]

Create Logger middleware with format:

This example is not tested
%a "%r" %s %b "%{Referer}i" "%{User-Agent}i" %T

Auto Trait Implementations

impl Send for Logger

impl Sync for Logger

Blanket Implementations

impl<T> From for T
[src]

Performs the conversion.

impl<T, U> Into for T where
    U: From<T>, 
[src]

Performs the conversion.

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

impl<T> Borrow for T where
    T: ?Sized
[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut for T where
    T: ?Sized
[src]

Mutably borrows from an owned value. Read more

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

🔬 This is a nightly-only experimental API. (get_type_id)

this method will likely be replaced by an associated static

Gets the TypeId of self. Read more

impl<T> Erased for T