Prozessüberwachung mit Haskell Angel

Prozessüberwachung mit Haskell Angel

Ich versuche, einen Prozess mit dem Prozessüberwachungstool Angel von Haskell zu überwachen. https://github.com/MichaelXavier/Angel Der Vorgang wird in einer Endlosschleife neu gestartet, wenn er ausgeführt wird, ohne dass ein HUP-Signal empfangen wird.

Siehe unten...

[2013/12/18 22:25:15] {- program: ls -} RESTART
[2013/12/18 22:25:15] {- program: ls -} START
[2013/12/18 22:25:15] {- program: ls -} Spawning process with env Just []
[2013/12/18 22:25:15] {- program: ls -} RUNNING
[2013/12/18 22:25:15] {- program: ls -} ENDED
[2013/12/18 22:25:15] {- program: ls -} WAITING
[2013/12/18 22:25:22] {- program: ls -} RESTART
[2013/12/18 22:25:22] {- program: ls -} START
[2013/12/18 22:25:22] {- program: ls -} Spawning process with env Just []
[2013/12/18 22:25:22] {- program: ls -} RUNNING
[2013/12/18 22:25:22] {- program: ls -} ENDED
[2013/12/18 22:25:22] {- program: ls -} WAITING
[2013/12/18 22:25:29] {- program: ls -} RESTART
[2013/12/18 22:25:29] {- program: ls -} START
[2013/12/18 22:25:29] {- program: ls -} Spawning process with env Just []
 ... etc

Dies geschieht sowohl für die Beispiel-App als auch, wenn ich versuche, meinen Webserver auszuführen. Hier ist meine Conf-Datei (direkt aus den Beispielen)

ls {
    exec = "ls"
    stdout = "/tmp/ls_log"
    stderr = "/tmp/ls_log"
    delay = 7
}

Ich habe Angel +x-Privilegien erteilt.

Irgendwelche Ideen, warum es immer wieder unendlich neu startet?

Antwort1

Dies ist beabsichtigt. Sobald ls fertig ist, wartet Angel 7 Sekunden und startet es neu. Auch hier wird ls sofort fertig und Angel wartet 7 Sekunden, bevor es wiederholt wird ...

Antwort2

Können Sie versuchen mit

ls_lala { exec = "ls" stdout = "/tmp/ls_log" stderr = "/tmp/ls_log" Verzögerung = 7 }

Sie geraten möglicherweise in eine Endlosschleife, weil Ihr Strukturname mit dem Namen der auszuführenden App identisch ist.

verwandte Informationen