Queue Growing Continuously
Troubleshooting runbook for queue growing continuously.
Production note: Back up the database and application files, test changes in staging, and verify cron ownership before deployment.
Confirm the symptom
Record the campaign, customer, delivery server, timestamp, message identifiers, and the first observed error. Avoid changing multiple components before preserving evidence.
Immediate triage
- Pause affected traffic if duplication or abuse is possible.
- Check cron freshness and application logs.
- Check SMTP, bounce, web-server, PHP, and database health.
- Confirm DNS and credentials from the current host.
Useful checks
crontab -l
systemctl status php-fpm nginx mariadb
journalctl -u php-fpm --since "30 minutes ago"
mysqladmin processlistDecision path
If the application cannot generate work, focus on PHP, database, permissions, and cron. If work is generated but not delivered, focus on delivery-server connectivity, authentication, routing, throttling, and provider responses.
Recovery and prevention
Recover with the smallest reversible change. Then add monitoring for the signal that would have detected the issue earlier.