2 unstable releases

0.2.0 May 27, 2021
0.1.0 May 25, 2021

#11 in #env-logger

MIT license

6KB
101 lines

threaded_logger

A logger wrapper that spawns tokio threads to make logging asynchronous.

Usage

It must be used with another logger crate that implements the log::Log trait. This crate only provides a wrapper function.

Also, a tokio runtime must be used.

Example

For example, you can use it with the env_logger crate.

Cargo.toml:

[dependencies]
log = "0.4.0"
env_logger = "0.8.3"
threaded_logger = "0.1.0"
tokio = { version = "1.0", features = ["full"] }

main.rs:

#[tokio::main]
async fn main() {
    let logger = env_logger::builder().build();
    let filter = logger.filter();

    threaded_logger::init(logger, filter);

    log::info!("hello");
}

Dependencies

~2.2–3.5MB
~50K SLoC