sentry-eyre

Crates.iosentry-eyre
lib.rssentry-eyre
version0.1.0
sourcesrc
created_at2023-08-16 07:47:58.175045
updated_at2023-08-16 07:47:58.175045
description🐻‍❄️👀 Sentry integration for `eyre`
homepage
repositoryhttps://github.com/auguwu/sentry-eyre
max_upload_size
id945607
size27,849
Noel Towa (auguwu)

documentation

README

🐻‍❄️👀 sentry-eyre

Sentry integration for eyre

sentry-eyre is a integration to capture eyre::Reports. This crate was inspired by the sentry-anyhow integration, and does a similar API but distinct enough to not create any issues.

Usage

[dependencies]
sentry-eyre = "0.1"
sentry = "*"
use eyre::Result;
use sentry_eyre::capture_report;
use sentry::{ClientOptions, init, types::Dsn};
use std::io::{Error, ErrorKind};

fn some_method_that_fails() -> Result<()> {
    Err(Error::new(ErrorKind::Other, "this should fail"))
}

fn main() {
    // init the client guard, which will be dropped at the end
    // of the scope.
    let _guard = init(ClientOptions::default());
    let func = some_method_that_fails();

    match func {
        Ok(()) => panic!("expected this to fail")
        Err(report) => {
            capture_report(&report);
        }
    }
}

License

sentry-eyre is released under the MIT License with love by Noel.

Commit count: 4

cargo fmt