Blog
Notes on keeping jobs alive
Failure modes of scheduled work, and what to do about them. RSS
-
Give your Laravel scheduler a memory: a run history in 30 lines
schedule:list shows what should happen — not what did. Build a queryable run history from Laravel's five scheduler events, with the traps that got us.
-
Your Laravel scheduler isn't running. Here's the ten-minute checklist
The scheduler is set up but the job never runs. Work through the usual causes in order: the crontab user, silenced output, filters, a stuck lock, timezones.
-
Nobody emails you before your certificate expires any more
Let's Encrypt stopped sending expiry emails and certificate lifetimes are shrinking to 47 days. What to monitor instead, and why "certbot ran" proves nothing.
-
Your Laravel scheduler failed at 3 AM. When would you find out?
Laravel's scheduler fails silently — a missed job leaves no error and no log. How to monitor scheduled jobs with a dead man's switch, one line per task.