2 个稳定版本
1.0.1 | 2022 年 4 月 14 日 |
---|
#1501 in Rust 模式
每月 43 次下载
52KB
241 行
Rust 自动崩溃报告
crashreport
是一个 设置与忘记 的库,它会将一个按钮添加到您应用程序的 panic 消息中,允许用户快速向您报告基本的诊断信息。
使用方法
首先,此库依赖于您在 Cargo.toml
文件中设置 repository
键。当使用 crashreport
时,您的 Cargo.toml
可能看起来像这样
[package]
name = "my-awesome-crate"
version = "0.1.0"
repository = "https://github.com/ewpratten/my-awesome-crate"
[dependencies]
crashreport = "^1.0.0"
# If you never want terminal colors, import the crate like this instead:
crashreport = { version = "^1.0.0", default-features = false }
在代码方面,只需使用我们的 crashreport!
宏在全局 panic 消息中添加按钮即可
#[macro_use]
extern crate crashreport;
pub fn main() {
// The important bit :)
crashreport!();
// ... do stuff
// Your panics are now a little fancier!
panic!("This is a panic!");
}
关于内部结构的说明
crashreport
通过 追加 一个新函数到您现有的 panic 处理器的末尾来实现。不必担心,如果您想保留复杂的自定义处理器,可以继续使用。只需在调用 crashreport!
之前初始化它们即可。
Git 提供者解析
目前,我们支持以下托管 Git 服务
- GitHub
- GitLab
如果您使用的是这些服务的自托管版本,crashreport
将 不会 自动检测。相反,您可以通过启用以下功能之一来强制重写提供者解析
assume_github
assume_gitlab
启用这些功能中的多个将导致第一个被使用
终端 URL
尽可能的情况下,crashreport
将尝试在您的终端中创建可点击的按钮。决定终端是否支持此功能的任务由 supports-hyperlinks
库执行。如果出现问题,请在那里打开一个 issue 以添加支持。
最坏的情况下,您可以通过设置环境变量 FORCE_HYPERLINK=0
来强制禁用按钮创建(回退到打印 URL)。
依赖项
~1–11MB
~102K SLoC