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

Мониторинг обнаруживает ошибку, но не перезапускает звездочку

Я использую Ubuntu 13.04 с соответствующими версиями monit (5.5-6) ​​и asterisk (1.8.13.1). Я настроил программу monit для просмотра моего файла журнала звездочки на предмет отключения от моего SIP-провайдера и перезапуска звездочки для нового подключения. Вот соответствующая часть скрипта наблюдения за монитором:

check file messages with path "/var/log/asterisk/messages" 
    start program = "/etc/init.d/asterisk start"
    stop program = "/etc/init.d/asterisk stop"
    if match "Retransmission timeout reached" then restart and noalert my@mail.com
    if match "timed out, trying again \(Attempt " then restart and noalert my@mail.com

Обнаружение ошибок работает нормально, при выполнении условия я получаю письма. Monit также останавливает демон звездочки, и соответствующие файлы PID в / var / run удаляются правильно. Однако звездочка не запускается снова. В файлах журнала monit или asteriks нет соответствующей ошибки.

В чем ошибка в этом случае? Где я могу найти дополнительную информацию по отладке?

Иногда вам нужно запустить monit с максимальной степенью детализации в режиме без демона, когда вы вызываете ошибку (например, выводите строки для отслеживания в файл журнала), чтобы установить, в чем проблема.

Остановите monit и запустите его:

monit -c /path/to/monit.conf -vv -I 2>&1 | tee /tmp/monit_debug.log

Спровоцируйте ошибку и сообщите об увиденном.