| Crates.io | dontpanic |
| lib.rs | dontpanic |
| version | 0.6.0 |
| created_at | 2024-05-16 08:40:42.508447+00 |
| updated_at | 2025-02-21 07:15:52.453435+00 |
| description | Get instant notifications about any panic!(); in your codebase. |
| homepage | |
| repository | https://github.com/peterprototypes/dontpanic |
| max_upload_size | |
| id | 1241903 |
| size | 65,500 |
Client library for Don't Panic Server. This crate registers a panic handler and send each panic from your application to a backend server. If configured, the latest log messages before each panic are sent as well. Supported logging facilities are log and tracing.
To use dontpanic, add this to your Cargo.toml:
[dependencies]
dontpanic = "*"
use anyhow::Result;
fn main() -> Result<()> {
let client = dontpanic::builder("<PROJECT_API_KEY>")
.environment("production")
.version(env!("CARGO_PKG_VERSION"))
.build()?
let logger = env_logger::Builder::from_default_env().build();
client.set_logger(logger)?;
log::info!("What's happening here?");
log::error!("Booooom");
Option::<u32>::None.unwrap();
Ok(())
}
<PROJECT_API_KEY> can be obtained from Don't Panic Server. For more examples see the Documentation.
All commit messages must follow Conventional Commits specification.
Licensed under either of
at your option.