1.11. Frequently Asked Questions

Q: My program never starts and supervisor doesn't indicate any error?
Q: How can I tell if my program is running under supervisor?
Q: My command line works fine when I invoke it by hand from a shell prompt, but when I use the same command line in a supervisor command= section, the program fails mysteriously. Why?
Q: How can I make Supervisor restart a process that's using "too much" memory automatically?
Q:

My program never starts and supervisor doesn't indicate any error?

A:

Make sure the "x" bit is set on the executable file you're using in the command= line.

Q:

How can I tell if my program is running under supervisor?

A:

Supervisor and its subprocesses share an environment variable SUPERVISOR_ENABLED. When a process is run under supervisor, your program can check for the presence of this variable to determine whether it is running under Supervisor (new in 2.0).

Q:

My command line works fine when I invoke it by hand from a shell prompt, but when I use the same command line in a supervisor command= section, the program fails mysteriously. Why?

A:

This may be due to your process' dependence on environment variable settings. See "Subprocess Environment" elsewhere in this document.

Q:

How can I make Supervisor restart a process that's using "too much" memory automatically?

A:

See the file memmon, a console script installed by the Supervisor distrubution for a mechanism to do this. This is a configurable event listener which works on both Linux and Mac OS X.