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
Laravel Modules and DDD
16 lessons
1 h 59 min
How to Build Laravel 12 API From Scratch
28 lessons
1 h 21 min
PhpStorm Junie AI for Laravel Projects: Crash Course
7 lessons
36 min