# The Rovella Logger #### This is a simple low overhead logger than uses `eprintln` and `println` with `format` to log text and other data. ## Examples ### The fatal macro is shown below and the other macros follow this pattern ```rust macro_rules! log_fatal { ($($args:tt)*) => { eprintln!("\x1b[1;92m{} \x1b[30;41m[FATAL]: {} \x1b[0m", format!("[{}:{}]", file!(), line!()), format!($($args)*), ); }; } ``` ### The macro can be used just like println but it gives some extra info (along with color) ```rust #[macro_use] extern crate rovella_logger; ... log_fatal!("Fatal error with code: {}", 4); // output => [src\main.rs:2] [FATAL]: Fatal error with code: 4 log_fatal!("Fatal"); // output => [src\main.rs:3] [FATAL]: Fatal ``` ### Macros with a security level below error don't compile to anything in release mode ```rust #[macro_use] extern crate rovella_logger; ... log_warn!("I'm only in debug mode {}", 4); // output => ... log_info!("I'm only in deubg mode"); // output => ... ```