“Pythin基础运维:综合实训”的版本间的差异
来自CloudWiki
(创建页面,内容为“==初始版:无线循环== <nowiki> import psutil #导入psutil模块 import json import yagmail #请先下载yagmail包,再导入 def mail(…”) |
|||
第6行: | 第6行: | ||
def mail(subject,contents): #---》形参为邮件的标题和内容 | def mail(subject,contents): #---》形参为邮件的标题和内容 | ||
− | yag = yagmail.SMTP(user='maxin5452@qq.com', password=' | + | yag = yagmail.SMTP(user='maxin5452@qq.com', password='aaaaaaaaaaaa', host='smtp.qq.com') #passwd为授权的密码不是登陆密码 |
#发送邮件 | #发送邮件 | ||
yag.send(to='458976849@qq.com',subject=subject, contents=contents) # ————》定义变量subject和contents | yag.send(to='458976849@qq.com',subject=subject, contents=contents) # ————》定义变量subject和contents | ||
第30行: | 第30行: | ||
==改进版== | ==改进版== | ||
+ | <nowiki> | ||
+ | import psutil #导入psutil模块 | ||
+ | import json | ||
+ | import yagmail #请先下载yagmail包,再导入 | ||
+ | import schedule | ||
+ | import time | ||
+ | |||
+ | def mail(subject,contents): #---》形参为邮件的标题和内容 | ||
+ | yag = yagmail.SMTP(user='maxin5452@qq.com', password='aaaaaaaaaa', host='smtp.qq.com') #passwd为授权的密码不是登陆密码 | ||
+ | #发送邮件 | ||
+ | yag.send(to='458976849@qq.com',subject=subject, contents=contents) # ————》定义变量subject和contents | ||
+ | #断开连接 | ||
+ | yag.close() | ||
+ | |||
+ | def cpu_info(): #----》函数名尽可能切合内容 | ||
+ | cpu = psutil.cpu_percent(1) | ||
+ | return cpu #----》返回cpu,可以被调用,此return的结果就是调用的结果 | ||
+ | |||
+ | def main(): #----->定义一个主函数 | ||
+ | m_cpu = cpu_info() | ||
+ | #print(m_cpu) | ||
+ | if m_cpu >0: #---》设置报警值,下同 | ||
+ | mail('cpu报警','CPU使用率占比过高') #---》给分函数mail的形参传参 | ||
+ | |||
+ | |||
+ | if __name__=='__main__': #--》主函数调用固定格式 | ||
+ | schedule.every(1).minutes.do(main) # 每隔十分钟执行一次任务 | ||
+ | #schedule.every().hour.do(run) # 每隔一小时执行一次任务 | ||
+ | #schedule.every().day.at("10:30").do(run) # 每天的10:30执行一次任务 | ||
+ | #schedule.every().monday.do(run) # 每周一的这个时候执行一次任务 | ||
+ | #schedule.every().tuesday.at("14:55").do(run) # 每周三13:15执行一次任务 | ||
+ | |||
+ | while True: | ||
+ | schedule.run_pending() # run_pending:运行所有可以运行的任务 | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | </nowiki> |
2021年5月13日 (四) 14:53的最新版本
初始版:无线循环
import psutil #导入psutil模块 import json import yagmail #请先下载yagmail包,再导入 def mail(subject,contents): #---》形参为邮件的标题和内容 yag = yagmail.SMTP(user='maxin5452@qq.com', password='aaaaaaaaaaaa', host='smtp.qq.com') #passwd为授权的密码不是登陆密码 #发送邮件 yag.send(to='458976849@qq.com',subject=subject, contents=contents) # ————》定义变量subject和contents #断开连接 yag.close() def cpu_info(): #----》函数名尽可能切合内容 cpu = psutil.cpu_percent(1) return cpu #----》返回cpu,可以被调用,此return的结果就是调用的结果 def main(): #----->定义一个主函数 m_cpu = cpu_info() #print(m_cpu) if m_cpu >0: #---》设置报警值,下同 mail('cpu报警','CPU使用率占比过高') #---》给分函数mail的形参传参 if __name__=='__main__': #--》主函数调用固定格式 while True: main()
改进版
import psutil #导入psutil模块 import json import yagmail #请先下载yagmail包,再导入 import schedule import time def mail(subject,contents): #---》形参为邮件的标题和内容 yag = yagmail.SMTP(user='maxin5452@qq.com', password='aaaaaaaaaa', host='smtp.qq.com') #passwd为授权的密码不是登陆密码 #发送邮件 yag.send(to='458976849@qq.com',subject=subject, contents=contents) # ————》定义变量subject和contents #断开连接 yag.close() def cpu_info(): #----》函数名尽可能切合内容 cpu = psutil.cpu_percent(1) return cpu #----》返回cpu,可以被调用,此return的结果就是调用的结果 def main(): #----->定义一个主函数 m_cpu = cpu_info() #print(m_cpu) if m_cpu >0: #---》设置报警值,下同 mail('cpu报警','CPU使用率占比过高') #---》给分函数mail的形参传参 if __name__=='__main__': #--》主函数调用固定格式 schedule.every(1).minutes.do(main) # 每隔十分钟执行一次任务 #schedule.every().hour.do(run) # 每隔一小时执行一次任务 #schedule.every().day.at("10:30").do(run) # 每天的10:30执行一次任务 #schedule.every().monday.do(run) # 每周一的这个时候执行一次任务 #schedule.every().tuesday.at("14:55").do(run) # 每周三13:15执行一次任务 while True: schedule.run_pending() # run_pending:运行所有可以运行的任务