Start/stop/restart a process

$ supervisorctl [start|stop|restart] [process_name]

Start/stop/restart all processes in a group
$ supervisorctl [start|stop|restart] [group_name]:*

Show last 100 **bytes** of process stderr
$ supervisorctl tail -100 [process_name] stderr

Keep displaying stdout of a process
$ supervisorctl tail -f [process_name] stdout

Reload process config file to add/remove processes as necessary
$ supervisorctl update


Supervisor Components


The command-line client piece of the supervisor is named supervisorctl. It provides a shell-like interface to the features provided by supervisord. From supervisorctl, a user can connect to different supervisord processes, get status on the subprocesses controlled by, stop and start subprocesses of, and get lists of running processes of a supervisord.

The command-line client talks to the server across a UNIX domain socket or an internet (TCP) socket. The server can assert that the user of a client should present authentication credentials before it allows him to perform commands. The client process typically uses the same configuration file as the server but any configuration file with a [supervisorctl] section in it will work.

Running Supervisor

This section makes reference to a BINDIR when explaining how to run the supervisord and supervisorctl commands. This is the "bindir" directory that your Python installation has been configured with. For example, for an installation of Python installed via ./configure --prefix=/usr/local/py; make; make install, BINDIR would be /usr/local/py/bin. Python interpreters on different platforms use a different BINDIR. Look at the output of install if you can't figure out where yours is.

supervisorctl Command-Line Options

-c, --configuration

Configuration file path (default /etc/supervisord.conf)

-h, --help

Print usage message and exit

-i, --interactive

Start an interactive shell after executing commands

-s,--serverurl URL

URL on which supervisord server is listening (default "http://localhost:9001").

-u, --username

Username to use for authentication with server

-p, --password

Password to use for authentication with server

-r, --history-file

Keep a readline history (if readline is available)

action [arguments]

Actions are commands like "tail" or "stop". If -i is specified or no action is specified on the command line, a "shell" interpreting actions typed interactively is started. Use the action "help" to find out about available actions.

Running supervisorctl

To start supervisorctl, run $BINDIR/supervisorctl. A shell will be presented that will allow you to control the processes that are currently managed by supervisord. Type "help" at the prompt to get information about the supported commands.

The supervisorctl executable may be invoked with "one time" commands when invoked with arguments from a command line. An example: supervisorctl stop all. If arguments are present on the command-line, it will prevent the interactive shell from being invoked. Instead, the command will be executed and supervisorctl will exit.

If supervisorctl is invoked in interactive mode against a supervisord that requires authentication, you will be asked for authentication credentials.



A process control system by D.J. Bernstein.


A process control system used by Apple as process 1 under Mac OS X.


A process control system.


A package which provides various event listener implementations that plug into Supervisor which can help monitor process memory usage and crash status:


Abbreviation of user mask: sets the file mode creation mask of the current process. See


2004-2015, Agendaless Consulting and Contributors


This man page was created by Orestis Ioannou <> using the official documentation.

Copied to clipboard