Run BrainSocket Laravel Artisan Command in Supervisor

Wiki
Supervisor is a client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.

It shares some of the same goals of programs like launchd, daemontools, and runit. Unlike some of these programs, it is not meant to be run as a substitute for init as “process id 1”. Instead it is meant to be used to control processes related to a project or a customer, and is meant to start like any other program at boot time.

Official Website supervisord.org

If you haven't install supervisor, you'll install it first.

# Debian / Ubuntu:
$ sudo apt-get install supervisor

Next, we'll configure it. We need to define a process to listen to.

$ sudo vim /etc/supervisor/conf.d/mysocket.conf

Add this to your new conf file, changing file paths and your environment as necessary

[program:mysocket]
command=php artisan brainsocket:start
directory=/path/to/laravel
stdout_logfile=/path/to/laravel/app/storage/logs/mysocket_brainsocket.log
redirect_stderr=true

We now have a process called "mysocket" which we can tell Supervisord to start and monitor.

Let's do that:

$ sudo supervisorctl
> reread # Tell supervisord to check for new items in /etc/supervisor/conf.d/
> add mysocket       # Add this process to Supervisord
> start mysocket     # May say "already started"

Now the "mysocket" process is on and being monitored. If our queue listener fails, Supervisord will restart the php artisan brainsocket:start process.

Reference Read Laravel 4 Real Time Chat and Production-Ready Beanstalkd with Laravel Queues

Run BrainSocket Laravel Artisan Command in Supervisor
3 votes, 4.33 avg. rating (88% score)