Python 3下是否存在可外部监控并自动重启脚本的工具?
求推荐跨平台的Python脚本外部监控重启工具
我开发了一个Python业务脚本,核心需求是实现自动重启机制,要能处理脚本崩溃或者完全冻结的场景。最开始我在脚本内部写了重启逻辑:
while True: try: main() except Exception: os.execv(sys.executable, ['python'] + sys.argv)
但实际运行下来,每隔几天还是会出现脚本崩溃或冻结的情况,手动在命令行执行python main.py就能恢复正常。我猜测问题出在这个重启逻辑是脚本内部实现的,稳定性不够。
所以现在想找一款外部的监控脚本/工具,需要满足这些功能点:
- 能够启动指定的目标脚本
- 支持通过进程名/进程ID、文件修改时间等维度监控脚本运行状态
- 当目标进程消失时,自动重启脚本
- 如果目标关联文件超过5分钟没有修改,自动停止并重启脚本
- 支持跨平台运行(Linux和Windows都要兼容)
- 能够完整记录所有崩溃相关的信息
我自己已经在动手开发这类工具了,但总觉得应该有现成的解决方案,不过在谷歌、GitHub上搜了一圈都没找到合适的。
更新:我已经基于@hansaplast的代码做了修改,上传到了GitHub(项目名为relauncher),大家可以直接复制使用。
内容的提问来源于stack exchange,提问作者Vladimir Oprya
相关产品推荐
相关产品推荐

