Как я могу постоянно проверять, что скрипт Python работает круглосуточно и без выходных?

Как я могу постоянно проверять, что скрипт Python работает круглосуточно и без выходных?

У меня есть скрипт python, который должен работать 24/7 на сервере Linux. Какой разумный способ убедиться, что он работает?

Они предложили мне использовать cron и второй скрипт, который каким-то образом проверяет первый.

решение1

я используюсупервайзердля этого. Cron хорош для того, чтобы запустить его один раз и поддерживать его в рабочем состоянии (используйте @reboot), но вам нужно что-то менее простое, чтобы следить за всем.

Мои файлы конфигурации предназначены для каждого приложения (а в Ubuntu что-то вроде /etc/supervisord/conf.d/foo.conf)

Это мой файл скрипта обновления ttrss, но он может послужить хорошей отправной точкой.

command=php ./update_daemon2.php
directory=/var/www/lupinenet/ttrss
autostart=true
startretries=5
stderr_logfile=/var/log/supervisor/ttrss/ttrss.err.log
user=www-data

Построчно,

Первая строка — команда, которую я хочу запустить (поместите команду, которую вы хотите запустить, здесь).
Вторая — каталог, в котором она находится (что делает ее более аккуратной, в моем случае она запускается внутри корня моего веб-сервера).
Она автоматически запустится и попробует 5 раз.
Мне нужен вывод на случай, если что-то пойдет не так, поэтому я задаю файл для stderr_logfile — это необязательно, и задаю пользователя, от имени которого я хочу запустить задачу. Мне нужно logrotate, но я все время забываю ;p

Вы можете настроить это по вкусу в соответствии сдокументы

Связанный контент