Я пытаюсь контролировать процесс с помощью инструмента мониторинга процессов ангела haskell. https://github.com/MichaelXavier/Angel Процесс продолжает перезапускаться в бесконечном цикле, когда он запускается без получения какого-либо сигнала HUP.
Увидеть ниже...
[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
Он делает это для примера приложения, а также когда я пытаюсь запустить свой веб-сервер. Вот мой файл conf (прямо из примеров)
ls {
exec = "ls"
stdout = "/tmp/ls_log"
stderr = "/tmp/ls_log"
delay = 7
}
Я дал привилегии angel + x.
Любые идеи о том, почему он продолжает бесконечно перезапускаться?
Это сделано намеренно. После завершения ls angel подождет 7 секунд и перезапустит его. И снова ls немедленно закончит, а angel будет ждать 7 секунд, прежде чем повторить ...
Вы можете попробовать с
ls_lala {exec = "ls" stdout = "/ tmp / ls_log" stderr = "/ tmp / ls_log" delay = 7}
Вы можете войти в бесконечный цикл, потому что имя вашей структуры совпадает с именем исполняемого приложения.