我有一个运行进程的 bash 脚本 -
it runs from an xsession /usr/share/xsessions/$user.desktop
我想使用 monit 监控该进程的状态。
是否可以创建一个 pid 并监视该 pid
如果发现进程已冻结或没有响应,那么再次运行我的脚本以重新启动该进程?
答案1
你可以使用任何你想监控的东西monit
- 它非常灵活。根据你想监控的东西和监控方式,你必须深入了解配置的工作原理。
您首先必须定义您的流程“无响应”的含义。
man
Monit页面的“服务测试”部分 列出了 Monit 可以执行的所有操作来确定某些东西是否正在运行。
如果您特别勇敢,您可以用-init
来代替monit
,但您可能还有很多工作要做,而回报可能不值得。
您可能还想研究一下,upstart
因为它是一个“插入式”(据我所知)替代品,旨在init
做这样的事情(但我对此了解不多)