woody

Crates.iowoody
lib.rswoody
version0.1.2
sourcesrc
created_at2023-04-08 21:19:26.744257
updated_at2024-04-23 11:58:16.298695
descriptionA logger for Rust that's *actually* easy to use.
homepage
repositoryhttps://github.com/trvswgnr/woody
max_upload_size
id833807
size20,766
Travis A. Wagner (trvswgnr)

documentation

README

Woody

A logger for Rust that's *actually* easy to use.

Features

  • Easy to use: Just import the macros and you're good to go. No need to configure anything. No need to create a logger. Just log.
  • Versatile: Log messages at different levels, works across threads, and can be used in libraries.
  • Lightweight: Relies only on lazy_static for thread safety and chrono for timestamps (in addition to the standard library).

Usage

Add this to your Cargo.toml:

[dependencies]
woody = "0.1.2"

Examples

use woody::*;

fn main() {
    log!(LogLevel::Info, "An info message.");
    log_debug!("A debug message.");
    log_info!("An info message.");
    log_warn!("A warning message.");
    log_error!("An error message.");
    log_trace!("A trace message.");
}

Logs are output to the woody.log file in the current directory.

Environment variables can be set to control the log level and output file:

$ WOODY_LEVEL=error cargo run # Only error messages will be logged
$ WOODY_FILE=woodyrulez.log cargo run # Logs will be written to woodyrulez.log

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

[!IMPORTANT]
When running tests, make sure to remove the woody.log file in the current directory after each test run.

cargo test && rm ./woody.log
Commit count: 26

cargo fmt