#logging #log #logger

aether-log

使用显式和可配置端点的最小化日志库

2 个版本

0.1.1 2022 年 6 月 26 日
0.1.0 2022 年 6 月 26 日

559调试

MIT 许可证

16KB
330

Aether

Rust 的最小化日志库,使用显式和可配置的端点。

如果使用 archive 功能,则支持自动存档旧文件;否则,添加 .bk 扩展名。

示例

use aether::log;

#[derive(Debug, Hash)]
enum Endpoint {
    Foo,
    Bar,
    Baz,
}

fn main() {
    let _keep = aether::init()
        .format(|log| {
            format!(
                "{} [{:?}] {}",
                log.time.format("%T.%3f"),
                log.endpoint,
                log.text
            )
        })
        .base_path("logs")
        .setup(Endpoint::Foo, |ep| ep.no_path())
        .setup(Endpoint::Bar, |ep| ep.path("output.log"))
        .setup(Endpoint::Baz, |ep| ep.path("baz.log").silent())
        .build();

    log!(Endpoint::Foo, "Hello World! {}", 0);
    log!(Endpoint::Baz, "I'm in the world!");
    log!(Endpoint::Bar, "Goodbye World! {}", 1);
}

lib.rs:

使用显式和可配置端点的最小化日志库。

依赖关系

~1–6.5MB
~29K SLoC