Ubuntu Upstart скрипт выполнить программу script.py

Я создаю сценарий upstart для выполнения написанной мной программы на python. Когда служба запускается, я хочу повторить starting service - script.py... и повторить идентификатор процесса программы после запуска.

Точно так же я хочу повторить stopping service - script.py..., когда он останавливается.

У меня есть это до сих пор (помните, что я новичок в этом) ...

#Name: script.conf
description "An upstart config to run ~/applications/systems/script.py as an OS service."
author "Corey F. - 12/2011"

pre-start script
    echo 'starting service - script.py...'
end script

post-stop script
    echo 'stopped service - script.py...'
end script

start on runlevel [2534]
stop on runlevel [!2534]

exec /home/lv_admin/applications/systems/script.py
respawn

Я думаю, что мне нужна команда 2534 status для получения processid и последнего известного состояния службы (как описано здесь: http://upstart.ubuntu.com/getting-started.html [ 114]) но я не уверен, куда это поставить ...

Кроме того, как мне зарегистрировать проблемы с событиями upstart в конкретном файле во время выполнения этого файла upstart script.conf? Мне нужно знать, есть ли у выскочки проблемы с запуском процесса.

6
задан 16 December 2011 в 19:07

1 ответ

Хорошо, немного старый вопрос, но давайте ответим на него из соображений полноты: -)

Допустим, вы сохранили эту работу в /etc/init/myapp.conf, тогда имя работы будет myapp. Запрос статуса задания (и идентификатора процесса) будет просто: status myapp (как root) или sudo status myapp в типичном пользовательском случае Ubuntu.

Ошибки инициализации переходят в dmesg по умолчанию, поэтому выполнение dmesg | grep "init:" дает вам журнал. Более подробное ведение журнала можно включить с помощью sudo initctl log-priority info. Уровни отладки, более подробные, чем спам, будут спамить и сбивать вас с толку: -)

Выполнение sudo stop myapp, sudo start myapp мгновенно дает вам обратную связь об успехе плюс идентификатор процесса. Если вы получили init: unknown job или около того, Upstart не удалось выполнить синтаксический анализ файла конфигурации, и точную строку и причину можно найти в dmesg.

0
ответ дан 16 December 2011 в 19:07

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

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