Pythonスクリプト用のCronウォッチドッグ

Pythonスクリプト用のCronウォッチドッグ

失敗するたびに自動的に再起動する必要があるPythonスクリプトがあります。

これを達成するために、次の設定でcronを試しました。

*/2 * * * * pgrep -f handler.py || /usr/bin/nohup /usr/bin/python3.6 /root/projects/myproject1/handler.py &

ただし、このコマンドをcliから直接実行すると正常に起動しますが、cronでは機能しません。

Syslogには、Cronがエラーなしでコマンドを実行しようとしていることが示されています。

CRON[10810]: (root) CMD (pgrep -f handler.py || /usr/bin/nohup /usr/bin/python3.6 /root/projects/myproject1/handler.py &)

ベストアンサー1

スクリプトを次のように書くことをお勧めします。システムサービス以下家庭教師または同様のプロセス制御システム。

編集する:

理由を明確にするため。ホイールを発明する必要はありません。 systemdとスーパーバイザの両方が必要な作業を正確に実行します。

おすすめ記事