put($workerFile, '[program:'.$workerName.'] process_name=%(program_name)s_%(process_num)02d'); Storage::disk('supervisor')->append($workerFile, 'command=php '.base_path().'/artisan queue:listen --queue=sd_ingest,default --tries=2 --timeout=180'); Storage::disk('supervisor')->append($workerFile, 'autostart=true autorestart=true user=www-data numprocs=3 redirect_stderr=true stdout_logfile=/var/log/queue/'.$workerName.'.log'); } catch (Exception $e) { $this->info('supervisor script failed to install. Did you install supervisor and are you running this script as root?'); return; } $this->info('supervisor script installed'); try { exec('sudo supervisorctl reread'); exec('sudo supervisorctl update'); exec('sudo supervisorctl stop '.$workerName.':*');//in case it's already started exec('sudo supervisorctl start '.$workerName.':*'); } catch (Exception $e) { $this->info('failed to start queue worker'); return; } $this->info('queue worker started'); } }