
Ich verwende Monit 5.3.2 auf meiner Linux-Box. Ich überwache einige Dienste mit Monit. Ich möchte ein Skript ausführen, bevor ich den Neustartbefehl ausführe. Dafür habe ich die folgenden Bedingungen verwendet.
if does not exist for 2 times within 3 cycles then exec "/bin/bash -c 'touch /tmp/somefile'" as uid someuser and gid someuser
if does not exist for 10 cycles then restart
Leider wird nur die Neustartaktion ausgeführt.
Kann mir bitte jemand helfen, herauszufinden, warum die erste Regel nicht ausgeführt wird? Gibt es eine andere Möglichkeit, das Problem zu lösen?
Antwort1
Dies ist keine endgültige Antwort, da ich ein Neuling bin, der derzeit einem ähnlichen Problem nachgeht.
Ich habe derzeit den Verdacht, dass die letzte Regel alle vorherigen Regeln außer Kraft setzt.
Versuchen Sie in diesem Fall Folgendes:
if does not exist for 2 times within 3 cycles
then exec "/bin/bash -c 'touch /tmp/somefile'" as uid someuser and gid someuser
ELSE if does not exist for 10 cycles then restart