16个版本 (10个重大变更)

0.12.2 2023年8月30日
0.11.0 2023年7月22日
0.6.1 2023年3月1日
0.6.0 2022年11月2日
0.4.0 2022年7月24日

#237调试

Download history 4/week @ 2024-04-14 4/week @ 2024-04-21 5/week @ 2024-04-28 7/week @ 2024-05-12 15/week @ 2024-05-19 4/week @ 2024-05-26 5/week @ 2024-06-02 4/week @ 2024-06-09 10/week @ 2024-06-16 7/week @ 2024-06-23 36/week @ 2024-06-30 8/week @ 2024-07-14 1/week @ 2024-07-21 130/week @ 2024-07-28

139 每月下载量
用于 5 个crate (4 个直接使用)

MIT 许可证

100KB
2.5K SLoC

logid

使用ID识别日志事件的Rust日志框架。

使用 logid

use logid::{log_id::{LogId, LogLevel}, err, ErrLogId};
use thiserror::Error;

#[derive(Debug, Clone, ErrLogId, Error)]
enum CrateError {
    #[error("`SomeError` description.")]
    SomeError,

    #[error("`InternalError` description.")]
    InternalError,
}

fn my_func() -> Result<(), CrateError> {
    // some code ...
    
    // on error
    err!(CrateError::SomeError)
}

贡献

目前还没有贡献指南,但欢迎创建问题和/或pull请求。

请注意,提交给 logid 的任何贡献都将采用MIT许可证。

许可证

MIT 许可


lib.rs:

提供设置和捕获 log_id::LogId 事件的库。 log_id::LogId 用于识别和分组事件。当事件 最终确定 后,由中央 LOGGER 捕获事件。显式地使用 .finalize(),将事件转换回 log_id::LogId,或在事件丢弃时隐式执行。

使用[evident]的LOGGER结构体创建了Publisher。这允许向一个或多个log_id::LogId添加订阅者,以接收那些log_id::LogId设置的事件。有关订阅变体的更多信息,请查阅evident

用法

use logid::{log_id::{LogId, LogLevel}, err, ErrLogId};
use thiserror::Error;

#[derive(Debug, Clone, ErrLogId, Error)]
enum CrateError {
    #[error("`SomeError` description.")]
    SomeError,

    #[error("`InternalError` description.")]
    InternalError,
}

fn my_func() -> Result<(), CrateError> {
    // some code ...

    // on error
    err!(CrateError::SomeError)
}

依赖项

~0.9–11MB
~83K SLoC