.\" Man page generated from reStructuredText. . .TH "PIDPROXY" "1" "December 10, 2015" "3.2.0" "Supervisor" .SH NAME pidproxy \- Supervisor pidproxy Documentation . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .sp Supervisor is a client/server system that allows its users to monitor and control a number of processes on UNIX\-like operating systems. .sp 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 \fBinit\fP 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. .SH OVERVIEW .SS \fBpidproxy\fP Program .sp Some processes (like \fBmysqld\fP) ignore signals sent to the actual process which is spawned by \fBsupervisord\fP\&. Instead, a "special" thread/process is created by these kinds of programs which is responsible for handling signals. This is problematic because \fBsupervisord\fP can only kill a process which it creates itself. If a process created by \fBsupervisord\fP creates its own child processes, \fBsupervisord\fP cannot kill them. .sp Fortunately, these types of programs typically write a "pidfile" which contains the "special" process\(aq PID, and is meant to be read and used in order to kill the process. As a workaround for this case, a special \fBpidproxy\fP program can handle startup of these kinds of processes. The \fBpidproxy\fP 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. .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [program:mysql] command=/path/to/pidproxy /path/to/pidfile /path/to/mysqld_safe .ft P .fi .UNINDENT .UNINDENT .sp The \fBpidproxy\fP program is put into your configuration\(aqs \fB$BINDIR\fP when supervisor is installed (it is a "console script"). .SH GLOSSARY .INDENT 0.0 .TP .B daemontools A \fI\%process control system by D.J. Bernstein\fP\&. .TP .B runit A \fI\%process control system\fP\&. .UNINDENT .SH AUTHOR This man page was created by Orestis Ioannou using the official documentation. .SH COPYRIGHT 2004-2015, Agendaless Consulting and Contributors .\" Generated by docutils manpage writer. .