监视器用于特定的python进程

时间:2017-10-27 09:21:46

标签: python linux system watchdog python-watchdog

我正在使用Ubuntu 16.04,我在后台有一个python运行进程

python myFunction.py

有时,myFunction进程因未知原因被杀死,但是,我想自动重启它。我有多个python进程在后台运行,我不知道哪个运行myFunctions.py(例如使用pgrep命令)。

有可能吗?每当运行它的python进程被杀死时,我可以创建一个bash或python脚本来重新启动命令python myFunction.py吗?

1 个答案:

答案 0 :(得分:1)

您可以查看Supervisord(来自其自己的文档):

  

允许其用户监视和控制的客户端/服务器系统   类UNIX操作系统上的进程数

Supervisord将控制您的脚本。如果崩溃,它将再次重新启动。如果您的树莓重新启动,它将确保脚本在启动后自动启动。

它的工作原理基于这样格式化的配置文件(docs中的更多信息):

[program:myFunction]
command=/path_to_script/myFunction.py
autostart=true
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/myFunction.log
stderr_logfile=/var/log/myFunction.error.log
directory=/path_to_script

我希望这会对你有所帮助