#logger #logging #log #log-file #terminal-file

loge

一个具有格式化输出的分析友好型日志记录器

12个不稳定版本 (3个破坏性版本)

0.4.2 2020年6月8日
0.4.1 2020年2月4日
0.3.1 2020年1月29日
0.2.3 2020年1月22日
0.1.2 2020年1月16日

#36 in #terminal-file

Download history 25/week @ 2024-03-31 1/week @ 2024-04-07 2/week @ 2024-04-14 7/week @ 2024-05-19 9/week @ 2024-05-26 1/week @ 2024-06-02 4/week @ 2024-06-16 2/week @ 2024-06-23 35/week @ 2024-06-30 18/week @ 2024-07-07

每月59次下载

MIT/Apache

28KB
499

loge

Crates.io Docs MIT/APACHE-2.0 GitHub Workflow Status

它有助于勤于记录并愿意审查。

一个具有格式化输出、易于分析的简单日志记录器。从最佳实践日志开始,提高您的生产力。

loge当前由功能和环境变量控制

  • 如果您需要记录时间,请启用chrono;
  • 当您启用json时,您还需要启用chrono;
  • 对于美观输出,请启用colored.
  • 默认情况下,我们已启用所有三个功能。
  • 您可以选择三种格式之一:targetfilelinejson。(设置环境变量LOGE_FORMAT。)

示例:

  • target: 日期 时间 [级别] 目标 ... 消息(启用 chrono) 或 级别 目标 ... 消息

    loge output

  • fileline: 日期 时间 [级别] 文件 - 目标 () ... 消息(启用 chrono) 或 级别 文件 - 目标 () ... 消息

    loge fileline output

  • json: 您应启用 jsonchrono;对于美观输出,请启用 colored

    {
      "time": "2020-02-02 18:33:33.645",
      "level": "ERROR",
      "message": "boom -> tests/simple-jsonified-log.rs:17",
      "service": {
        "name": "loge",
        "version": "0.4.1"
      },
      "location": {
        "file": "tests/simple-jsonified-log.rs",
        "line": 17,
        "target": "simple_jsonified_log::tests"
      }
    }
    
  • 文件: 如果您想将日志打印到文件,请启用它,您将在终端和文件中看到输出。

待办事项

  • 格式
    • 简单的JSON日志记录器。// 未优化。
    • 多彩、直观。
  • 分析
    • 基本解析器。
    • 粗粒度图表。
  • 其他
    • 轻量级 - 尽可能少的依赖。
    • 清晰的架构和灵活的配置。
    • 异步。
    • 输出到文件。

用法

首先,您应该将其添加到您的 Cargo.toml 文件中。

[dependencies]
log = "0.4.8"
loge = "0.4.2"

之后,在您的代码中设置 RUST_LOGLOGE_FORMAT 变量,并初始化日志记录器。

std::env::set_var("RUST_LOG", "trace");
std::env::set_var("LOGE_FORMAT", "target"); // `fileline` or `json`(need enable `json` and `chrono`)
loge::init(); // If you enable `file`, you can't use this func.
// Or `loge::init_with_file("your-app.log");`, but need enable `file`, and will see output both in terminal and file. 

只需运行您的项目,您将在终端中获得日志。

联系方式

Chojan Shang - @PsiACE - [email protected]

项目链接: https://github.com/psiace/loge

许可协议

许可协议为以下之一

致谢

依赖项

~1–10MB
~70K SLoC