在Ubuntu上监控Python脚本

3 投票
1 回答
3166 浏览
提问于 2025-04-17 04:28

我有一系列的Python程序,它们从不同的地方获取数据。目前,我是通过终端手动启动每一个程序,但我想找一个更可靠的方法。我想创建一个本地的浏览器仪表盘,这样我就可以用它来启动、停止和监控每个Python进程。

那么,在Ubuntu系统上,我该如何把一个Python脚本作为系统进程启动,而不是每个都要打开一个终端窗口呢?

另外,为了监控每个数据获取程序的状态,我打算使用像rabbitmq或redis这样的中介来记录任何变化或错误,这样我就可以通过网页仪表盘进行监控。我的问题是,如果某个程序因为某种原因崩溃了,它在仪表盘上仍然会显示为“运行中”。我是否应该创建一个监控程序,专门负责启动和监控每个数据获取程序呢?

我很感激任何关于如何实现这个目标的建议。

1 个回答

3

看起来你想用Python创建守护进程。你可以参考下面的链接,了解如何在Python中编写守护进程:如何在Python中创建守护进程?

关于“监控”的部分,你可以实现一个功能,检查PID文件中写的进程ID是否还在运行。这个可以通过使用psutil来完成,就像'rpInt'建议的那样。

撰写回答