Как контролировать процесс и запланировать периодический перезапуск?

Я запускаю процесс, который иногда падает, а иногда останавливается. Я использовал supervise, чтобы он автоматически перезагружался при сбое. Однако, если он зависнет, он останется замороженным, пока я не вернусь к компьютеру. Мне нужен инструмент, который перезапускает его при сбое, но также может быть настроен на периодическое уничтожение и перезапуск, поэтому, если он замерзнет, ​​он не будет зависать больше, чем в определенный период времени.

Какой инструмент кто бы предложил?

Спасибо

0
задан 7 July 2013 в 00:37

2 ответа

Я пытался использовать, контролируют от daemontools с crontab:

Во-первых, я запускаю с

supervise /fullpath

и я использую этот crontab:

0 23 * * * svc -d /fullpath
2 23 * * * svc -k /fullpath
5 23 * * * svc -u /fullpath

Где полный путь является каталогом, содержащим файл, названный выполненным, которые запускают мой процесс. Хитрая часть является названным файлом, должен закончиться:

exec java ...

Обычно, я запускаю приложение со сценарием, но если я поместил тот сценарий в файл, названный выполненным, когда svc выполняется, это отправляет сигнал в сценарий, и процесс Java продолжают работать. Я создал копию сценария и изменил его, чтобы заставить его произвести вызов к Java со всем параметром и скопировал это в файле, названном выполненным.

0
ответ дан 7 July 2013 в 00:37

Вы можете использовать cron, если хотите ...

sudo crontab -e

* /5 * * * pkill -9 <your process name here> ; <your process name here>

Убивал и перезапускал его каждые 5 часов. Больше примеров ... Примеры Cron

0
ответ дан 7 July 2013 в 00:37

Другие вопросы по тегам:

Похожие вопросы: