Let's talk about job failures: what happens when a job fails and what you can do about it.
Failed Laravel Job
Imagine the scenario: We have the same notification job, which would fire the email to admins. After starting the queue worker, it will be empty at first as there are no jobs in the queue, and it is waiting for the jobs.
After a user registers, a job is added to the queue and is processed successfully.

Let's change the code by adding a user's email to the mail view without passing it from the mail class.
resources/views/email/registered-user.blade.php:
Hi, a new user {{ $name }} {{ $email }} is registered.
When a worker is started again, and the user tries to register, the job status now is failed.
You have to stop and start the queue worker after code changes because queue:work loads the Laravel application into memory only once when it starts.

But how can you see the error? In the database, there is a table called