Provided by: supervisor_4.2.5-1_all bug

NAME

       pidproxy - Supervisor pidproxy Documentation

       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.

OVERVIEW

   pidproxy Program
       Some processes (like mysqld) ignore signals sent to the actual process which is spawned by
       supervisord.  Instead, a "special" thread/process is created by these  kinds  of  programs
       which  is  responsible  for handling signals.  This is problematic because supervisord can
       only kill a process which it creates itself.  If a process created by supervisord  creates
       its own child processes, supervisord cannot kill them.

       Fortunately,  these  types  of  programs  typically  write  a "pidfile" which contains the
       "special" process' PID, and is meant to be read and used in order to kill the process.  As
       a  workaround  for this case, a special pidproxy program can handle startup of these kinds
       of processes.  The pidproxy program is a small shim that starts a process,  and  upon  the
       receipt  of  a  signal,  sends  the  signal  to  the  pid provided in a pidfile.  A sample
       configuration program entry for a pidproxy-enabled program is provided below.

          [program:mysql]
          command=/path/to/pidproxy /path/to/pidfile /path/to/mysqld_safe

       The pidproxy program is put into your configuration's $BINDIR when supervisor is installed
       (it is a "console script").

GLOSSARY

       daemontools
              A process control system by D.J. Bernstein.

       runit  A process control system.

AUTHOR

       This  man  page  was  created by Orestis Ioannou <orestis@oioannou.com> using the official
       documentation.

COPYRIGHT

       2004-2015, Agendaless Consulting and Contributors