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 13 Eloquent: Expert Level
41 lessons
1 h 34 min
Queues in Laravel 13
18 lessons
1 h 12 min read
How to Build Laravel 13 API From Scratch
30 lessons
1 h 23 min