#panic #error #logging #log-file

oopsie_woopsie

一个库,用于在终端用户机器上简化意外panic的调试

9个稳定版本

4.0.0 2023年9月24日
3.1.2 2023年7月8日
3.0.0 2023年6月29日
2.1.3 2023年6月29日
0.1.1 2023年6月9日

#602 in 调试

Download history 37/week @ 2024-03-10 32/week @ 2024-03-17 1/week @ 2024-03-24 53/week @ 2024-03-31 1/week @ 2024-04-07

每月146次下载

MIT许可协议

9KB
109

Oopsie woopsie!

一个库,用于在终端用户机器上简化意外panic的调试。提供了一个panic处理程序,它会生成有用的panic消息并将回溯、系统信息和minidump保存到文件中。此库旨在仅用于分发给他人的构建。

特性

  • 显示panic_info和回溯
  • 创建包含panic消息、系统信息和回溯的panic日志文件
  • 创建当前进程的minidump(目前功能有限)

使用示例

fn main() {
    // Add #[cfg(not(debug_assertions))] here if you want to only enable these in release builds
    std::panic::set_hook(Box::new(|panicinfo: &std::panic::PanicInfo| {
        oopsie_woopsie::set_panic_handler(panicinfo, &oopsie_woopsie::PanicHandlerConfig{
            file_dir: Some("D:/Projects/oopsie_woopsie_test".into()),
        })
    }));

    panic!("Goodbye, world!");
}

注意:此crate仅适用于panic。它不能调试崩溃。如果您需要崩溃调试,则需要使用进程外崩溃处理程序,例如 BreakpadCrashpad。还有 EmbarkStudio的崩溃处理实用程序crate

依赖关系

~0–10MB
~96K SLoC