4个版本
0.1.4 | 2022年8月5日 |
---|---|
0.1.3 | 2022年7月16日 |
0.1.2 | 2022年7月16日 |
0.1.1 |
|
0.1.0 | 2022年7月16日 |
#544 in 调试
在rovella中使用
5KB
74 行
rovella日志记录器
这是一个使用eprintln
和println
以及format
来记录文本和其他数据的简单、低开销的日志记录器。
示例
下面的致命宏展示了,其他宏遵循此模式
macro_rules! log_fatal {
($($args:tt)*) => {
eprintln!("\x1b[1;92m{} \x1b[30;41m[FATAL]: {} \x1b[0m",
format!("[{}:{}]", file!(), line!()),
format!($($args)*),
);
};
}
该宏可以使用与println相同的方式,但它提供了一些额外信息(包括颜色)
#[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
低于错误安全级别的宏在发布模式下不会编译为任何内容
#[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 => ...