leo*_*ess 1 python centos python-3.x python-daemon
我有一个 python3.9 脚本,我想 24/7 运行。在其中,我使用python-daemon来保持它的运行,如下所示:
import daemon
with daemon.DaemonContext():
%%script%%
Run Code Online (Sandbox Code Playgroud)
它工作正常,但几个小时或几天后,它就会随机崩溃。我总是以以下方式启动它,sudo但我似乎无法弄清楚在哪里可以找到用于调试的守护进程进程的日志文件。我可以做什么来确保日志记录?如何让脚本保持运行或在崩溃后自动重新启动它?
您可以在此处找到完整的代码。
如果您确实想在后台 24/7 运行脚本,最干净、最简单的方法肯定是创建一个 systemd 服务。
已经有很多关于如何执行此操作的描述,例如此处。
除了能够在启动时启动服务之外,它的优点之一systemd是能够在失败后重新启动它。
Restart=on-failure
Run Code Online (Sandbox Code Playgroud)
如果您只想在崩溃后自动重新启动程序,最简单的方法可能是使用 bash 脚本。
您可以使用until loop,只要给定条件的计算结果为 false,它就会执行一组给定的命令。
Restart=on-failure
Run Code Online (Sandbox Code Playgroud)
如果该命令返回非零退出状态,则脚本将重新启动。
| 归档时间: |
|
| 查看次数: |
4123 次 |
| 最近记录: |