Ich richte monit ein und möchte eine bestimmte Python-Anwendung überwachen. Monit tut dies, indem er die .pid-Dateien nach Prozessen durchsucht, aber ich weiß nicht, wo dies sein würde.
Ich habe auch versucht, meine eigene einfache ausführbare Datei zu erstellen und sie auszuführen. Auch hier kann ich nicht herausfinden, wo die PID-Datei erstellt wird.
Und haben alle Prozesse eine PID-Datei?
linux
monitoring
monit
pid
Yarin
quelle
quelle
.pid
Datei. Die Anwendung (oder ihr Startskript) muss explizit eines erstellen.Antworten:
Normalerweise finden Sie die PID-Dateien für daemonisierte Prozesse in
/var/run/
Redhat / CentOS-ähnlichen Systemen.Kurz gesagt, Sie können immer in das Prozess-Init-Skript schauen. Beispielsweise wird der SSH-Dämon mit dem Skript in gestartet
/etc/init.d/sshd
. Manchmal wird die PID dort definiert (Suche nach PID, PID, PIDFILE, PID_FILE usw.).Die meisten anderen Daemons auf RHEL-ähnlichen Systemen verwenden das
/etc/init.d/functions
Skript jedoch für einige allgemeine Funktionen.Für alles, was Quellen
/etc/init.d/functions
, wird die PID leben/var/run/*.pid
.Für benutzerdefinierte Anwendungen wird die PID (hoffentlich) in einem Wrapper-Skript definiert. Die meisten Entwickler, die ich kenne, folgen jedoch der gleichen Konvention wie die obigen Daemons.
Wenn Sie tun , ohne eine PID - Datei Begegnung etwas, denken Sie daran , dass Monit als auch auf einem Prozess String Pater überwachen kann .
quelle
monit procmatch anything
die Kommandozeile ausprobiere bekomme ichmonit: invalid argument -- procmatch
. Irgendwelche Ideen?monit -V
) Welches Betriebssystem / Distribution?Ein anderer Ansatz, den ich gewählt habe:
Ich habe einen Datenbankserver, der im eingebetteten Modus ausgeführt wird, und die Daten befinden sich im Verzeichnis der enthaltenen Anwendung.
Die Datenbank hat so etwas wie eine PID-Datei, nennt sie jedoch Sperrdatei. Um diese Sperrdatei zu finden, habe ich alle von der App geöffneten Dateien aufgelistet:
Das gab mir eine lange Liste mit Sockets, Pipes, Serverdateien usw. Einige Filter und ich bekam das, was ich brauchte:
quelle