[program:iboa-worker]
; ──────────────────────────────────────────────────────────────────────────────
; Supervisor config — A3 ERP queue worker
;
; INSTALLATION (Ubuntu/Debian)
;   sudo cp /var/www/iboa/docker/supervisor/iboa-worker.conf \
;            /etc/supervisor/conf.d/iboa-worker.conf
;   sudo supervisorctl reread
;   sudo supervisorctl update
;   sudo supervisorctl start iboa-worker:*
;
; USEFUL COMMANDS
;   sudo supervisorctl status
;   sudo supervisorctl restart iboa-worker:*
;   sudo supervisorctl tail -f iboa-worker:iboa-worker_00
; ──────────────────────────────────────────────────────────────────────────────

; Path to php-cli — adjust if PHP is in a non-standard location
command=php /var/www/iboa/artisan queue:work database \
    --sleep=3 \
    --tries=3 \
    --max-time=3600 \
    --timeout=90 \
    --queue=default

process_name=%(program_name)s_%(process_num)02d

; Run 2 parallel workers. Increase if the queue is heavily loaded.
numprocs=2

autostart=true
autorestart=true

; Restart worker after 4 hours to prevent memory leaks
stopasgroup=true
killasgroup=true

; Run as the web-server user (adjust for your OS)
user=www-data

; Log files
stdout_logfile=/var/log/supervisor/iboa-worker.log
stdout_logfile_maxbytes=10MB
stdout_logfile_backups=5
stderr_logfile=/var/log/supervisor/iboa-worker-error.log
stderr_logfile_maxbytes=10MB
stderr_logfile_backups=5

; Time to wait before force-killing on stop (> artisan timeout)
stopwaitsecs=120
