In some cases, we want to perform some action when job has failed. For example, send an email or a notification.
For this purpose, we can use failed() method in the job class, just like the handle() method:
namespace App\Jobs\Invoice;use Illuminate\Bus\Batchable;use Illuminate\Bus\Queueable;use Illuminate\Queue\SerializesModels;use Illuminate\Queue\InteractsWithQueue;use Illuminate\Contracts\Queue\ShouldQueue;use Illuminate\Foundation\Bus\Dispatchable;use Throwable; class CalculateSingleConsignment implements ShouldQueue{ use Batchable, Dispatchable, InteractsWithQueue, Queueable, SerializesModels; // ... __construct() method, handle() method, etc. public function failed(Throwable $exception) { // Perform any action here when job has failed }}
Tip given by @pauloimon
Enjoyed This Tip?
Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.
Recent Courses
[NEW] Laravel 13 Starter Kit Teams and Customizations
10 lessons
33 min
Roles and Permissions in Laravel 13
14 lessons
57 min
How to Build Laravel 13 API From Scratch
30 lessons
1 h 23 min