[][src]Module roa::logger

The logger module of roa. This module provides a middleware logger.

Example

use roa::logger::logger;
use roa::preload::*;
use roa::{App, Context};
use roa::http::StatusCode;
use async_std::task::spawn;

async fn end(ctx: &mut Context<()>) -> roa::Result {
    ctx.write_text("Hello, World");
    Ok(())
}

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    pretty_env_logger::init();
    let app = App::new(())
        .gate(logger)
        .end(end);
    let (addr, server) = app.run()?;
    spawn(server);
    let resp = reqwest::get(&format!("http://{}", addr)).await?;
    assert_eq!(StatusCode::OK, resp.status());
    Ok(())
}

Functions

logger

A middleware to log information about request and response.