Python程序监控脚本
2023-02-18 16:43:33 时间
有些软件虽然卖的很贵,但是稳定性还是让人很无语,经常莫名其妙的崩溃,生产服务器怎么能允许这种事情发生!
一个监控程序运行的就这样诞生了,程序Python 2.7
思路很简单,先写一个监控的函数,判断是否在运行,然后循环调用N次,直到运行成功,实在不行,就发个通知或者记录下来
难点在于如何判断进程在运行。
思路也很简单,主要用到了这两个方法
- os.popen
- os.system
他们两个都可以直接运行cmd或者shell中的命令,但是前者会返回输出的内容,可以做进一步的处理
而后者只是执行,并把结果打印出来。
下面是程序,注释已经很清晰了
#coding=utf-8
"""
To check program if it is running
@author PHPergao
@time 2014-7-22
"""
import re
import os
import time
import urllib2
import urllib
flag = 1
#check function
def checkhct():
#tasklist也可换成linux下打印所有进程的命令 ps aux
for line in os.popen('tasklist').readlines():
#判断用正则更准确,也可以使用find或者index判断
pattern = re.compile(r'qq.*', re.I)
match = pattern.match(line)
if(match):
return True
return False
#repeat 3 times
for x in xrange(0,3):
if(checkhct() == False):
print 'error'
#程序路径
os.system('D:\t\qq.exe')
else:
print 'running'
flag = 0
break
#if is't running
if(flag==1):
#send email...
...
...
相关文章
- Python快速爬取车标网图片,以后不要说这什么车你不认识了!
- 抖音上超好听的神曲音乐,Python教你一次性下载
- 基于Atlas 200 DK的原版YOLOv3(基于Darknet-53)实现(Python版本)
- Python大神编程常用4大工具,你用过几个?
- Python自动化测试Selenium+chrome连接HTTP代理(账密+白名单)
- Python HTTP代理的优缺点?芝麻代理豌豆代理熊猫代理讯代理?
- Biopython | 介绍和安装
- 如何正确遵守 Python 代码规范
- 如何在 python 中解决 ImportError: DLL load failed while importing win32api
- 如何在 python 中解决报错 ImportError: The 'pyparsing' package is required
- 如何使用 python 爬取酷我在线音乐
- 如何在 python 中提取图片主题色
- 数据库开发实战教程:使用Python连接Kerberos的Presto
- 赶在520之前,程序员如何用Python送上最特别的“我爱你”表白
- 【图文教程】腾讯云安装python3
- Python学习:内建属性、内建函数的教程
- [oeasy]python0030_设置路径_export_PATH_zsh_系统路径设置_export
- Python从0到1丨细说图像增强及运算
- Python图像处理丨详解图像去雾处理方法
- 盘点Python 中字符串的常用操作