Skip to content

hashrabbit/sentry-rust

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rust Sentry Lib

Build Status Crates.io Coverage Status

Sentry Service now available for rust ;)

Rust 1.10 should include register_panic_handler and btw bring more value to this lib ;) This implementation use one thread listening incoming messages from dedicated channel and sending those messages to sentry server. If this thread panics, a new one is created.

Usage

Add this to your Cargo.toml:

[dependencies]
sentry = "0.1.9"

and this to your crate root:

extern crate sentry;

Examples

let credential = SentryCredential { key: "xx".to_string(), secret: "xx".to_string(), host: "app.getsentry.com".to_string(), project_id: "xx".to_string() };
let sentry = Sentry::new( "Server Name".to_string(), "release".to_string(), "test_env".to_string(), credential );
sentry.info("test.logger", "Test Message", None);

you can share sentry accross threads

let sentry = Arc::new(Sentry::new( "Server Name".to_string(), "release".to_string(), "test_env".to_string(), credential ));
let sentry1 = sentry.clone();
thread::spawn(move || sentry1.info("test.logger", "Test Message", None));

with rust 1.10 or nightly you can register panic handler and still provide you own handler

sentry.register_panic_handler(Some(|panic_info: &PanicInfo| -> () {}));
sentry.unregister_panic_handler();

OpenSSL

Check OpenSSL setup for OSX if you have some issue while building OpenSSL.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Packages

No packages published

Languages

  • Rust 100.0%