10、Rust 日志追踪与优化实践

Rust 日志追踪与优化实践

1. tracing-subscriber 引入

在 Rust 项目中, tracing 本身并不直接提供订阅者。为了实现基本的订阅功能,我们需要引入 tracing-subscriber 这个 crate。操作步骤如下:
1. 在 Cargo.toml 中添加依赖:

[dependencies] 
# ... 
tracing-subscriber = { version = "0.2.12", features = ["registry", "env-filter"] }
  1. tracing-subscriber 不仅提供了一些实用的订阅者,还引入了 Layer 这个关键特性。 Layer 使得我们可以为跨度(span)数据构建处理管道,避免了构建一个无所不包的订阅者,而是通过组合多个小的层来获得所需的处理管道。这种分层方法的核心是 Registry ,它实现了 Subscriber 特性,负责存储跨度元数据、记录跨度之间的关系以及跟踪哪些跨度处于活动状态、哪些已关闭。下游的层可以利用 Registry 的功能,专注于自己的目的,如过滤要处理的跨度、格式化跨度数据、将跨度数据发送到远程系统等。
2. tracing-bunyan-f
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值