3 个版本 (破坏性更新)
0.3.0 | 2024 年 4 月 12 日 |
---|---|
0.2.0 | 2023 年 7 月 1 日 |
0.1.0 | 2022 年 6 月 21 日 |
在 调试 中排名第 543
每月下载量 140
275KB
148 行
sentry-tauri
一个改进 Sentry 支持的 Tauri 插件。
在 Tauri 应用程序中分别使用 Sentry 的 Rust 和浏览器 SDK 是完全合理的。然而,此插件通过 Rust 后端传递浏览器面包屑和事件,这具有许多优点
- 浏览器事件将添加 Rust、操作系统和设备上下文
- Rust 和浏览器的事件将具有相同的上下文以进行过滤
- 面包屑将从 Rust 和浏览器 SDK 合并
- 查看事件发生时 Rust 后端和浏览器前端的情况
安装
此示例还展示了 sentry_rust_minidump
的使用,该工具允许您从单独的崩溃报告进程捕获本地崩溃的 minidump。
在 Cargo.toml
中添加所需的依赖项
[dependencies]
sentry-tauri = "0.2"
sentry
和 sentry-rust-minidump
由 sentry-tauri
重新导出,因此您不需要将它们作为依赖项添加。
fn main() {
let client = sentry_tauri::sentry::init((
"__YOUR_DSN__",
sentry_tauri::sentry::ClientOptions {
release: sentry_tauri::sentry::release_name!(),
..Default::default()
},
));
// Everything before here runs in both app and crash reporter processes
let _guard = sentry_tauri::minidump::init(&client);
// Everything after here runs in only the app process
tauri::Builder::default()
.plugin(sentry_tauri::plugin())
.run(tauri::generate_context!())
.expect("error while running tauri app");
}
插件
- 在每个 web-view 中注入和初始化
@sentry/browser
- 包含
beforeSend
和beforeBreadcrumb
钩子,用于拦截事件和面包屑,并通过 Tauri 的invoke
API 将它们传递给 Rust SDK - Tauri +
serde
+ 现有的 Sentry Rust 类型 = 反序列化基本上 Just Works™️
示例应用程序
克隆此仓库并安装依赖项
> yarn install
在 examples/basic-app/src-tauri/src/main.rs
中替换 DSN 为您的 DSN
以开发模式运行
> yarn example
依赖项
~25–67MB
~1M SLoC