34个版本
0.1.32 | 2023年10月13日 |
---|---|
0.1.31 | 2023年5月11日 |
0.1.30 | 2022年10月6日 |
0.1.29 | 2022年7月29日 |
0.1.2 | 2019年7月10日 |
#432 in 调试
8,164,446 每月下载量
在 31,184 个crate中(172直接使用) 使用
220KB
3K SLoC
tracing-core
应用级跟踪的核心原语。
概述
tracing
是一个用于对Rust程序进行仪器的框架,用于收集结构化、基于事件的诊断信息。这个crate定义了 tracing
的核心原语。
该crate提供
-
span::Id
识别程序执行中的某个跨度。 -
Event
表示跟踪中的一个事件。 -
Subscriber
是实现收集跟踪数据的特质。 -
Dispatch
允许将跨度和事件分发给Subscriber
。
此外,它定义了全局调用点注册表和线程级别的当前分发器,其他跟踪系统组件依赖于这些。
编译器支持: 需要 rustc
1.56+
用法
应用程序作者通常不会直接使用此包。相反,他们将会使用 tracing
包,它提供了一个功能更全面的 API。然而,这个包的 API 变化非常少,因此在依赖项必须非常稳定时可以使用。
Subscriber
实现可能依赖于 tracing-core
而不是 tracing
,因为 tracing
提供的附加 API 主要用于对库和应用程序进行仪表化,对于 Subscriber
实现通常不是必需的。
包功能标志
以下包功能标志可用
-
std
:依赖于 Rust 标准库(默认启用)。no_std
用户可以使用default-features = false
来禁用此功能[dependencies] tracing-core = { version = "0.1.31", default-features = false }
注意:
tracing-core
的no_std
支持 需要liballoc
。
支持的 Rust 版本
Tracing 是基于最新稳定版构建的。最低支持的版本是 1.56。当前 Tracing 版本不一定可以在低于最低支持版本的 Rust 版本上构建。
Tracing 采用与 Tokio 项目其余部分相同的编译器支持策略。当前的稳定 Rust 编译器和它之前的三个最近的小版本将始终得到支持。例如,如果当前的稳定编译器版本是 1.69,最低支持版本将不会超过 1.69,三个小版本之前。只要这样做符合此策略,增加最低支持的编译器版本不被视为 semver 破坏性更改。
许可证
此项目采用 MIT 许可证。
贡献
除非你明确声明,否则你故意提交以包含在 Tokio 中的任何贡献,都应按照 MIT 许可证进行许可,不附加任何额外的条款或条件。