Easily log and report exceptions to multiple different places (file, database, Sentry, Bugsnag, ...)
iivannov/snitch is a Laravel package for easily log and report exceptions to multiple different places (file, database, sentry, bugsnag, ...).
It currently has 0 GitHub stars and 20 downloads on Packagist (latest version 1.0.0).
Install it with composer require iivannov/snitch.
Discover more Laravel packages by iivannov
or browse all Laravel packages to compare alternatives.
Last updated
The package gives you the ability to define multiple handlers and subscribe them to accept different Exceptions that will be logged or reported. This way you can log different errors in different files, to ignore some of the errors or to save specific errors in a database and send others to a third party service.
The package can be installed with Composer. Just run this command:
$ composer require iivannov/snitch
Currently we support only two handlers:
Any contributions are welcomed :)
We define a new SentryHandler and we tell it that all exceptions other than an \InvalidArgumentException::class will be sent to Sentry service Then we create a new Snitch instance and add the handler.
$handler = new SentryHandler(YOUR_SENTRY_DSN);
$handler->ignore(\InvalidArgumentException::class);
$snitch = new Snitch();
$snitch->handler($handler);
Snitch will check which registered handlers are accepting the given exception and they will log or report it.
try {
...
} catch (\Exception $e) {
$snitch->report($exception, ['foo' => 'bar']);
}