This package sends notifications if a queued job fails. Out of the box it can send a notification via mail and/or Slack. It leverages Laravel 5.3's notification capabilities.
Spatie is a webdesign agency based in Antwerp, Belgium. You'll find an overview of all our open source projects on our website.
You can install the package via composer:
composer require spatie/laravel-failed-job-monitor
If you intend to use Slack notifications you should also install the guzzle client:
composer require guzzlehttp/guzzle
Next up, the service provider must be registered:
'providers' => [
...
Spatie\FailedJobMonitor\FailedJobMonitorServiceProvider::class,
...
];
Next, you must publish the config file:
php artisan vendor:publish --provider="Spatie\FailedJobMonitor\FailedJobMonitorServiceProvider"
This is the contents of the default configuration file. Here you can specify the notifiable to which the notifications should be sent. The default notifiable will use the variables specified in this config file.
return [
/**
* The notification that will be sent when a job fails.
*/
'notification' => \Spatie\FailedJobMonitor\Notification::class,
/**
* The notifiable to which the notification will be sent. The default
* notifiable will use the mail and slack configuration specified
* in this config file.
*/
'notifiable' => \Spatie\FailedJobMonitor\Notifiable::class,
/**
* The channels to which the notification will be sent.
*/
'channels' => ['mail', 'slack'],
'mail' => [
'to' => 'email@example.com',
],
'slack' => [
'webhook_url' => env('FAILED_JOB_SLACK_WEBHOOK_URL'),
],
];
The default notification class provided by this package has support for mail and Slack.
If you want to to customize the notification you can specify your own notification class in the config file.
// config/laravel-failed-job-monitor.php
return [
...
'notification' => \App\Notifications\CustomNotificationForFailedJobMonitor::class,
...
The default notifiable class provided by this package use the channels
, mail
and slack
keys from the config
file to determine how notifications must be sent
If you want to customize the notifiable you can specify your own notifiable class in the config file.
// config/laravel-failed-job-monitor.php
return [
'notifiable' => \App\CustomNotifiableForFailedJobMonitor::class,
...
You're free to use this package (it's MIT-licensed), but if it makes it to your production environment you are required to send us a postcard from your hometown, mentioning which of our package(s) you are using.
Our address is: Spatie, Samberstraat 69D, 2060 Antwerp, Belgium.
The best postcards will get published on the open source page on our website.
If you configured the package correctly, you're done. You'll receive a notification when a queued job fails.
Please see CHANGELOG for more information what has changed recently.
composer test
Please see CONTRIBUTING for details.
If you discover any security related issues, please email freek@spatie.be instead of using the issue tracker.
A big thank you to Egor Talantsev for his help creating v2
of the package.
Spatie is a webdesign agency based in Antwerp, Belgium. You'll find an overview of all our open source projects on our website.
The MIT License (MIT). Please see License File for more information.