1 个不稳定版本
0.6.0 | 2024年3月8日 |
---|
#576 在 调试 中
74KB
352 代码行
欢迎来到 cursive-flexi-logger-view 👋
使用 emabee/flexi_logger 的 gyscos/cursive 的替代调试视图
本项目为 gyscos/cursive 提供了一个新的调试视图,使用了 emabee/flexi_logger 包。这使得 FlexiLoggerView
能够尊重 RUST_LOG
环境变量以及 flexi_logger
配置文件。下面查看 demo
以了解其外观。
看起来如何? demo
展开查看
使用方法
只需将其添加到您的 Cargo.toml
[dependencies]
cursive-flexi-logger-view = "^0"
使用 FlexiLoggerView
要创建一个 FlexiLoggerView
,您首先必须在 flexi_logger
中将 cursive_flexi_logger
注册为一个 Writer
。在 flexi_logger
启动后,您可以创建一个 FlexiLoggerView
实例并将其添加到 cursive。
use cursive::Cursive;
use cursive_flexi_logger_view::FlexiLoggerView;
use flexi_logger::Logger;
fn main() {
// we need to initialize cursive first, as the cursive-flexi-logger
// needs a cursive callback sink to notify cursive about screen refreshs
// when a new log message arrives
let mut siv = Cursive::default();
Logger::try_with_env_or_str("trace")
.expect("Could not create Logger from environment :(")
.log_to_file_and_writer(
flexi_logger::FileSpec::default()
.directory("logs")
.suppress_timestamp(),
cursive_flexi_logger_view::cursive_flexi_logger(&siv)
)
.format(flexi_logger::colored_with_thread)
.start()
.expect("failed to initialize logger!");
siv.add_layer(FlexiLoggerView::scrollable()); // omit `scrollable` to remove scrollbars
log::info!("test log message");
siv.run();
}
查看 文档 以获取 API 的详细解释。
故障排除
如果您发现任何错误/意外行为或对未来的更改有建议,请打开一个问题,描述当前行为和您期望的行为。
开发
运行测试
只需运行
$ cargo test
即可执行所有可用测试。
shields.io 端点
shields.io 端点生成在 ./target/shields
文件夹内。它们被用于本 README 文件。
作者
Fin Christensen
:octocat:
@fin-ger
🐘@fin_ger@weirder.earth
🐦@fin_ger_github
Johannes Wünsche
:octocat:
@jwuensche
🐘@fredowald@mastodon.social
🐦@Fredowald
展示你的支持
如果这个项目帮到了你,请给一个 ⭐!
依赖项
~6–12MB
~126K SLoC