写了个Python脚本监控nginx进程

接上一文用iptables让SSH服务对陌生人说不。还是有点担心这个学期内,nginx可能会因为系统各种原因而出现异常退出,导致Web服务暂停。所以,又来了一个方案。

#!/usr/bin/env python
import os, sys, time

while True:
    time.sleep(3)
    try:
        ret = os.popen('ps -C nginx -o pid,cmd').readlines()
        if len(ret) < 2:
            print "nginx process killed, restarting service in 3 seconds."
            time.sleep(3)
            os.system("service nginx restart")
    except:
        print "Error", sys.exc_info()[1]

设置文件可执行属性,加入到/etc/rc.local,总算放心了。
这种方法还可以监控别的进程,我相信应该有现成的监控软件,但是我觉得写个脚本更方便。

写了个Python脚本监控nginx进程》上有17条评论

    1. Xiaoxia 文章作者

      apache的进程模式运行似乎挺稳定的。我的博客运行了好几个月,也不会遇到问题。

      回复
  1. 六月峰

    我的网站一年跑apache都没遇到问题的,额~~ 不过每周日晚上都要手动重启一下vps(强迫症患者),也不知道为啥养成了习惯,难道是跟网吧老板学的?哇哈哈

    回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>