Назад | Перейти на главную страницу

Monit сообщает, что "не удалось остановить" до истечения времени ожидания

Я начинаю и останавливаюсь процесс через monit со следующим синтаксисом:

stop program = "..." with timeout 90 seconds

Все работает хорошо, кроме того, что Монит всегда сообщает failed to stop ровно через минуту:

Из /var/log/monit.log:

[EST Nov 11 11:04:09] info     : 'myprocess' stop: /bin/su
[EST Nov 11 11:05:09] error    : 'myprocess' failed to stop
[EST Nov 11 11:05:10] info     : 'myprocess' stop action done

Я явно хочу, чтобы он подождал 90 секунд, а не 60 секунд. Что я делаю не так?

Оказывается, это была ошибка в Monit: https://bitbucket.org/tildeslash/monit/issue/109/failed-to-stop-always-after-60-seconds Обновление до Monit> = 5.9 должно решить проблему.

Интервал проверки вашего демона Monit составляет, вероятно, 60 секунд, поэтому цикл проверки выполняется до вашего тайм-аута.

set daemon 60

Можете ли вы опубликовать всю свою конфигурацию Monit? Есть ли причина, по которой вам нужен 90-секундный тайм-аут, чтобы остановить процесс?

По умолчанию Monit ожидает 30 секунд команд запуска / остановки, когда просматривает список процессов. Можешь попробовать короче with timeout?