Supervisord and stdout/stderr

supervisord

For a program configuration block in Supervisord, is it necessary to set stderr_logfile if redirect_stderr is true?

stderror_logfile=/path/to/logfile/stderr.log
stdout_logfile=/path/to/logfile/stdout.log
redirect_stderr=true

Since redirect_stderr is true, this should mean that stderr.log will be empty, and the combination of stderr and stdout streams will show up in sdtout.log. Is my understanding correct?

Best Answer

Quoting Supervisord configuration file documentation :

redirect_stderr
If true, cause the process’ stderr output to be sent back to supervisord on its stdout file descriptor (in UNIX shell terms, this is the equivalent of executing /the/program 2>&1).

stderr_logfile
Put process stderr output in this file unless redirect_stderr is true.

Then yes, both stderr and stdout will appear in stdout.log, and stderr.log will remain empty.