3个版本
| 1.0.0-alpha-2.0.0 | 2022年4月27日 |
|---|---|
| 1.0.0-alpha-1.0.1 | 2022年4月25日 |
#531 in 调试
75KB
1K SLoC
跟踪
tracing 订阅者的实现,用于与BP3D软件一起使用。通过bp3d-logger支持传统日志记录,并通过TCP支持远程性能分析。
状态
此crate目前处于高度实验性阶段,可能不会在所有系统上工作。目前,仅在macOS 12.3.1上进行了全面测试。它可能在其他unix系统上工作。
此外,此版本在Windows系统上目前存在错误。
使用方法
在代码中
fn main() {
let _guard = bp3d_tracing::initialize("my-application");
//Application code using `tracing` or `log` utilities.
}
注意:此库使用线程进行日志记录和性能分析。因此,在删除_guard守护变量之前不应调用std::process::exit()。否则,将导致后端日志记录被截断,并可能导致分析器后端的数据丢失。
运行
要配置bp3d-tracing的行为,使用了以下一些环境变量
| 名称 | 类型 | 可能的值 | 行为 | 默认值 |
|---|---|---|---|---|
| PROFILER | 布尔值 | 1, 0, true, false, on, off | 启用远程性能分析。 | off |
| LOG | 枚举 | trace, debug, info, warning, error | 日志记录后端的最大日志级别。 | info |
| LOG_DISABLE | 布尔值 | 1, 0, true, false, on, off | 禁用日志记录后端。 | off |
| LOG_STDOUT | 布尔值 | 1, 0, true, false, on, off | 始终将日志消息打印到stdout。 | off |
| LOG_COLOR | 布尔值 | 1, 0, true, false, on, off | 启用颜色输出。 | isatty |
在配置环境变量不期望或过于复杂的系统中,此库支持 bp3d-env。
bp3d-env 支持将文件作为环境变量的后备。此库将以下默认路径附加到 bp3d-env bp3d-fs::App::new("my-application").get_documents()?.join("environment"),对应以下路径
| OS | 路径 |
|---|---|
| macOS | ~/Library/Application Support/my-application/Documents/environment |
| Linux | ~/.local/share/my-application/Documents/environment |
| Windows | %APPDATA%/my-application/Documents/environment |
| iOS | 文件应用/my-application/environment |
依赖
~7-19MB
~265K SLoC