#logging #tracing #metrics #observability

emit_term

将诊断事件输出到控制台

9个版本

0.11.0-alpha.9 2024年8月21日
0.11.0-alpha.82024年8月15日
0.11.0-alpha.72024年7月31日
0.11.0-alpha.62024年6月28日

#762 in 调试

Download history 640/week @ 2024-06-07 80/week @ 2024-06-14 8/week @ 2024-06-21 188/week @ 2024-06-28 42/week @ 2024-07-05 109/week @ 2024-07-26 23/week @ 2024-08-02 80/week @ 2024-08-09 164/week @ 2024-08-16

376 每月下载量

MIT/Apache

200KB
4K SLoC

emit_term

term

当前文档

将诊断事件输出到控制台。

此库实现了一种旨在直接供最终用户消费的基于文本的格式,例如在交互式应用程序中。


lib.rs:

将诊断事件输出到控制台。

此库实现了一种旨在直接供最终用户消费的基于文本的格式,例如在交互式应用程序中。

入门指南

emitemit_term 添加到您的 Cargo.toml

[dependencies.emit]
version = "0.11.0-alpha.9"

[dependencies.emit_term]
version = "0.11.0-alpha.9"

使用 emit_term 初始化 emit

fn main() {
let rt = emit::setup()
.emit_to(emit_term::stdout())
.init();

// Your app code goes here

rt.blocking_flush(std::time::Duration::from_secs(30));
}

emit_term 使用一种针对人类可读性优化的格式,而不是针对机器处理。您可能还想将诊断输出到其他位置,例如通过 emit_otlp 输出到OTLP或通过 emit_file 输出到滚动文件以进行处理。您可以使用 emit::Setup::and_emit_to 来组合多个发射器

fn main() {
let rt = emit::setup()
.emit_to(emit_term::stdout())
.and_emit_to(some_other_emitter())
.init();

// Your app code goes here

rt.blocking_flush(std::time::Duration::from_secs(30));
}

依赖项

~2.3–9.5MB
~100K SLoC