2 个不稳定版本
使用旧的 Rust 2015
0.1.0 | 2017年6月10日 |
---|---|
0.0.1 | 2017年5月28日 |
#138 in #logs
94 每月下载量
用于 10 个 (8 直接) crate
8KB
79 代码行数(不包括注释)
Timber
是一个简单的日志工具。它提供了一种在并发应用程序中将日志写入指定文件的方法。
timber!
宏接受一个级别数字作为参数,只有当级别大于零时才会写入日志。如果用户将日志级别定义为常量,编译器将能够忽略传递给未使用日志的字符串,并使应用程序更小。这样用户可以保留一组调试日志,但在发布时编译它们。
默认情况下,timber
将日志写入 stdout
。要将日志写入文件,需要传递文件路径和 timber::init(path)
。
以下是一个 timber
的示例包装器
#[macro_use(timber)]
use timber;
#[cfg(debug)]
pub mod level {
pub const ERR: i32 = 1;
pub const DEB: i32 = 2;
pub const INF: i32 = 7;
}
#[cfg(not(debug))]
pub mod level {
pub const ERR: i32 = 1;
pub const DEB: i32 = 0;
pub const INF: i32 = 3;
}
macro_rules! log_err{($($arg:tt)*) => {timber!($crate::level::ERR, "ERR", $($arg)*)}}
macro_rules! log_deb{($($arg:tt)*) => {timber!($crate::level::DEB, "DEB", $($arg)*)}}
macro_rules! log_inf{($($arg:tt)*) => {timber!($crate::level::INF, "INF", $($arg)*)}}
//log_err!("This is error! I'm visible!");
//log_deb!("I'm debug. I'm visible only in debug mode.");
依赖关系
~0.6–1MB
~15K SLoC