sentry-tauri
A Tauri Plugin for improved Sentry support.
It's perfectly reasonable to use Sentry's Rust and browser SDKs separately in a Tauri app. However, this plugin passes browser breadcrumbs and events through the Rust backend which has a number of advantages:
This example also shows usage of
sentry_rust_minidump
which
allows you to capture minidumps for native crashes from a separate crash
reporting process.
Add the required dependencies in Cargo.toml
:
toml
[dependencies]
sentry-tauri = "0.2"
sentry
and sentry-rust-minidump
are re-exported by sentry-tauri
so you
don't need to add them as dependencies.
```rust fn main() { let client = sentrytauri::sentry::init(( "YOURDSN", sentrytauri::sentry::ClientOptions { release: sentrytauri::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");
} ```
@sentry/browser
in every web-viewbeforeSend
and beforeBreadcrumb
hooks that intercept events and breadcrumbs and passes
them to the Rust SDK via the Tauri invoke
APIserde
+ existing Sentry Rust types = Deserialisation mostly Just Works™️Clone this repository and install dependencies:
```shell
yarn install ```
In examples/basic-app/src-tauri/src/main.rs
replace the DSN with your DSN
Run in development mode:
```shell
yarn example ```