异常,不应该存在,但是我们有时候会遇到这样的情况,比如我们监控服务器的时候,每一秒去采集一次信息,那么有一秒没有采集到我们想要的信息,但是下一秒采集到了, 而后每次的采集都能采集到,就那么一次采集不到,我们应该针对这一次采集不到进行分析吗,这种的情况可以说无法重复出现,我们也无法避免,因为外界的因素太多太多,我们无法去控制这些外面的因素,所以我们会有这样的需求,一段时间内出现频率多少次,我们才能显示一次报警,或者说,一段时间内出现的频率达到我们的异常许可范围我们认为这样的属于异常,我们可以发出报警。
那么我们怎么来实现呢,我想到了装饰器,当程序执行到异常后,我记录时间,写入文件,然后读取最近的第五次的判断,两者时间戳的只差小于60s,我认为这样的可以发送警报,如果大于60s,则认为不足以发出我们的警告,
那么我们来看看我们的代码应该怎么写。
import datetime,time,random def make(func): def mak(*args,**kwargs): try: func(*args,**kwargs) except: with open('except.txt','a+') as f: except_time=datetime.datetime.now() f.writelines(except_time.strftime('%Y-%m-%d %H:%M:%S')+'\n') f.close() with open('except.txt','rb') as m: try: date=m.readlines()[-5].decode('utf-8') ne=(date.split('\r\n')[0]) f1=datetime.datetime.strptime(ne,'%Y-%m-%d %H:%M:%S') if (except_time-f1).seconds<6: print('异常!!!fail') else: print('正常!') m.close() except: print('越界代表着我们的实验是成功的') return mak @make def beijing(i,m): print(i/m) if __name__=="__main__": while True: f=random.choice([0,1,2,3]) n=random.choice([0,1,2,3]) beijing(f,n) time.sleep(0.3)
这样我们针对一个程序的异常监控就实现了,我们来运行下这个异常监控的代码。,
我们可以看到我们的代码可以正常运行,那么我们来试试,我们对多个程序的代码进行监控,我们的脚本可不可以实现呢。
@make def shanghai(i,m): print(i/m) @make def rizhao(i,m): print(i/m) @make def zhengzhou(i,m): print(i/m)
PS:遇到问题没人解答?需要Python学习资料?可以加点击下方链接自行获取
note.youdao.com/noteshare"text-align: center">
我们可以看到,只要有异常,我们的程序都会记录,当然了,这样的还不能正常利用到我们的工作中,
稍后,可以将这里的异常监控的部分的实践,和我之前写的异常监控脚本想结合下。
总结
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“python装饰器实现对异常代码出现进行自动监控的实现方法”评论...
更新日志
2024年11月08日
2024年11月08日
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]