• python监控CPU/内存/磁盘,超过指定百分比,发送邮件


    #!/usr/bin/python
    #coding:utf-8
    
    #导入psutil模块
    import psutil
    import yagmail
    
    def mail(subject,contents):      #形参为邮件的标题和内容
        yag = yagmail.SMTP(user='zhangweihappy8@163.com', password='xxx', host='smtp.163.com')  #passwd为授权的密码不是登陆密码
        #发送邮件
        yag.send(to='zui_city_zhang@163.com',subject=subject, contents=contents)
        #断开连接
        yag.close()
      
    
    
    def cpu_info():
        cpu = psutil.cpu_percent(1)
        return cpu
    res=cpu_info()
    
    def mem_info():
        mem = psutil.virtual_memory()
        info1={'mem_total':mem[0],'mem_free':mem[1],'mem_percent':mem[2],'mem_used':mem[3]}
        return info1
    res2=mem_info()
    
    def disk_info():
        disk = psutil.disk_usage('/')
        info2 = {'total': disk[0], 'used': disk[1], 'free': disk[2], 'percent': disk[3]}   #同样写入一个字典
        return info2
    res3=disk_info()
    
    def main():
        m_cpu = res
        m_mem = res2
        m_disk = res3    #将各个分函数的调用结果当作函数体输入
        msg='''          
        cpu使用率%s
        内存总量%sM      
        内存剩余%sM
        内存使用率%s
        内存使用量%sM
        磁盘总量%sGB
        磁盘使用量%sGB
        磁盘剩余量%sGB
        磁盘使用率%s%%
        '''%(m_cpu,int(m_mem.get('mem_total')/1024/1024),int(m_mem['mem_free']/1024/1024),m_mem['mem_percent'],int(m_mem['mem_used']/1024/1024),int(m_disk['total']/1024/1024/1024),int(m_disk['used']/1024/1024/1024),int(m_disk['free']/1024/1024/1024),m_disk['percent']) 
        print(msg)
        if m_cpu >50:
            mail('cpu报警',msg)
        else:
            print('cpu正常')
        if m_mem['mem_percent'] > 50:
            mail('内存占用过半',msg)
        else:
            print('relax')
        if m_disk['percent'] > 50:
            mail('磁盘快炸了',msg)
        else:
            print('磁盘正常')
    
    if __name__=='__main__':
        main()
  • 相关阅读:
    大规模web服务读书笔记 狼
    MVC3如果虚拟目录中有点号,会导致静态文件404 狼
    CDN服务商和CDN常见问题 狼
    中文字段名,问题根源查询无聊话题。 狼
    NET下Session共享的几种实现方式 狼
    企业应用架构读书笔记与总结 狼
    Redis简单本机测试 狼
    你是否经历过这些,求如何继续才能提升 狼
    WinDbg配置和使用基础
    Python IDLE入门
  • 原文地址:https://www.cnblogs.com/hello-wei/p/11671506.html
Copyright © 2020-2023  润新知