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