перезапустите мой сервер приложений автоматически через новомодный сценарий

У меня есть машина Ubuntu 12.04, в которой я выполняю свой сервер приложений C++, которым я управляю через новомодный сценарий. Значение каждый раз, когда мой сервер приложений разрушает мой новомодный сценарий, перезапустит их назад автоматически и каждый раз, когда моя машина человечности перезагружается/перезапускается, мой новомодный сценарий перезапустит мой сервер приложений снова.

Ниже мой новомодный сценарий:

start on runlevel [2345]
stop on runlevel [016]

chdir /opt/process/process_server
respawn

post-start script
    echo "App server started at `date +"%F %T"` on `hostname -f`" | mailx -r "abc@host.com" -s "Process Started" "pqr@host.com"
end script

post-stop script
  sleep 30
end script

limit core unlimited unlimited
limit nofile 8092 8092
setuid caprti
exec ./process_server --config_file=../config/process.init

Теперь странная вещь, я имею, видят это по крайней мере дважды - Моя машина человечности была перезапущена, и я не знаю, как и кто сделал это, но мой сервер приложений не был перезапущен вообще, и я не знаю почему? Я протестировал это многократно один перезагрузка того же самого поля путем ввода "sudo reboot" и каждый раз, когда та машина возвращается, я вижу, что мой сервер приложений перезапущен автоматически.

Под каким условие во время перезагрузки моего поля Ubuntu не приведет к моему серверу приложений, перезапускаемому от моего выше новомодного сценария? Есть ли что-нибудь, что я пропускаю в своем Новомодном сценарии?

Также, как я проверяю, что мой Новомодный сценарий пытался перезапустить мой сервер приложений во время последней перезагрузки, но это перестало работать по некоторым причинам, если это - то, что происходило с моим в течение тех двух раз?

1
задан 16 July 2015 в 21:05

2 ответа

У меня есть некоторые примечания или подсказки, которые могут помочь:

  • respawn строка файла конфигурации, явно не указывая пределы имеет значения по умолчанию.

    6,28 переикры

    Далее обратите внимание на это, если задание не указывает respawn limit строка файла конфигурации, а также respawn строка файла конфигурации, задание будет иметь предел переикры по умолчанию примененным (см. respawn limit).

    6,29 пределов переикры

    Перепорождение подвергается пределу. Если задание будет повторно порождено больше, чем времена КОЛИЧЕСТВА в секунды ИНТЕРВАЛА, то это будет считаться, имея глубже проблемы и будет остановлено. КОЛИЧЕСТВО по умолчанию равняется 10. ИНТЕРВАЛ по умолчанию составляет 5 секунд.

    Использование:

    respawn 
    respawn limit unlimited
    
  • Проверьте его журналы как в то, как отладить новомодные сценарии?. Можно создать собственные журналы для отслеживания более определенного использования задач pre-start, post-start & post-stop сценарии и переменные проверки как RESULT и PROCESS, посмотрите Выскочку: отчет (электронная почта, журнал) на переикре и отказе

  • start on runlevel [2345]!!! Вы уверены, что runlevel является единственным необходимым условием запустить этот сервис? примеры: делает ту потребность демона C++ filesystem, networking.. Посмотрите, Какие события доступны Выскочке?

    Кто-то использовал start on stopped rc постараться не искать каждое событие, источник: Запустите jackd с приоритета в реальном времени с выскочкой

Ссылки:

1
ответ дан 7 December 2019 в 13:55

Отладка

системой по умолчанию хранят журналы новомодных файлов в /var/log/upstart. обычно, это снабжает name_of_upstartfile.log в /var/log/upstart. Изучите /var/log/upstart/file.log. где file.log является журналом Вашего init файла /etc/init/file.conf. Вы можете легкий определять то, что Вы пропускаете в новомодном сценарии.

синтаксис проверки новомодного файла init-checkconf /etc/init/file.conf или с большим количеством использования режима отладки init-checkconf -d /etc/init/file.conf

start on local-filesystems или start on (local-filesystems and net-device-up IFACE!=lo) вместо start on runlevel [2345]. Вы выполняете команду, которым нужна локальная файловая система и при сетях также nedded, чем добавляют сети или проверяют другое требование. все еще проблема затем отправляет журнал или ошибку.

1
ответ дан 7 December 2019 в 13:55

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

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