; Supervisor program: Laravel queue worker for Shalom CareSol ; --------------------------------------------------------------------------- ; Processes queued jobs (SMS broadcasts via App\Jobs\BroadcastSmsJob, mail ; notifications, etc.). Requires QUEUE_CONNECTION=database (see .env). ; ; Install: ; sudo cp deploy/supervisor/shalom-queue.conf /etc/supervisor/conf.d/ ; sudo supervisorctl reread && sudo supervisorctl update ; sudo supervisorctl status shalom-queue:* ; ; After every deploy, restart the workers so they load the new code: ; php artisan queue:restart # graceful; Supervisor respawns them ; --------------------------------------------------------------------------- [program:shalom-queue] process_name=%(program_name)s_%(process_num)02d command=/usr/bin/php8.4 /var/www/apps/shalom-api/artisan queue:work database --sleep=3 --tries=3 --max-time=3600 --timeout=3600 directory=/var/www/apps/shalom-api autostart=true autorestart=true stopasgroup=true killasgroup=true user=www-data numprocs=1 redirect_stderr=true stdout_logfile=/var/www/apps/shalom-api/storage/logs/queue-worker.log stdout_logfile_maxbytes=50MB stdout_logfile_backups=5 ; A broadcast job can run a long time (all patients); give it room to finish ; before Supervisor considers a stop signal failed. stopwaitsecs=3600