Estoy configurando monit y quiero monitorear una aplicación de python dada. Monit hace esto mirando los archivos .pid para los procesos, pero no sé dónde estaría esto.
También intenté crear mi propio ejecutable simple y ejecutarlo; aquí tampoco puedo entender dónde se crea el archivo .pid.
¿Y todos los procesos tienen un archivo .pid?
linux
monitoring
monit
pid
Yarin
fuente
fuente
.pid
archivo. La aplicación (o su secuencia de comandos de inicio) necesita crear una explícitamente.Respuestas:
Por lo general, encontrará los archivos PID para procesos demonizados en los
/var/run/
sistemas de estilo Redhat / CentOS.Aparte de eso, siempre puede buscar en el script de inicio del proceso. Por ejemplo, el demonio SSH se inicia con el script en
/etc/init.d/sshd
. A veces, el PID se definirá allí (busque pid, PID, PIDFILE, PID_FILE, etc.).Sin embargo, la mayoría de los otros demonios en los sistemas de estilo RHEL obtienen el
/etc/init.d/functions
script para algunas características comunes.Para cualquier cosa que las fuentes
/etc/init.d/functions
, el PID vivirá en/var/run/*.pid
.Para aplicaciones personalizadas, el PID se definirá en un script de contenedor (con suerte). Sin embargo, la mayoría de los desarrolladores que conozco siguen la misma convención que los demonios anteriores.
Si haces encuentro algo sin un archivo PID, recuerda que Monit puede supervisar en un patern cadena de proceso, así .
fuente
monit procmatch anything
en la línea de comando me salemonit: invalid argument -- procmatch
. ¿Algunas ideas?monit -V
) ¿Qué sistema operativo / distribución?Otro enfoque que tomé:
Tengo un servidor de base de datos ejecutándose en modo incrustado, y los datos están dentro del directorio de la aplicación que lo contiene.
La base de datos tiene algo así como un archivo .pid, pero lo llama archivo de bloqueo. Para localizar este archivo de bloqueo, enumeré todos los archivos abiertos por la aplicación:
Eso me dio una larga lista que incluye enchufes, tuberías, archivos de servidor, etc. Pocos filtros y llegué a lo que necesitaba:
fuente