您现在的位置是:首页 > 文章详情

python代码如何利用阿里云发送邮件

日期:2019-01-21点击:399
此代码是磁盘使用率超过90%就会发送邮件
#!/usr/bin/env python
#coding:utf-8
import socket
import re
import os
import smtplib
import datetime
import commands,time 
from email.mime.text import MIMEText
from email.utils import formataddr
# 硬盘使用率报警阀值
m=socket.gethostname()
s="磁盘使用率超过:"
b="测试服务器"
d="%"
hd_usage_rate_threshold = 90
def check_hd_use():
        cmd_get_hd_use = '/bin/df'
        try:
            fp = os.popen(cmd_get_hd_use)
        except:
            ErrorInfo = r'get_hd_use_error'
            print ErrorInfo
            return ErrorInfo
        re_obj = re.compile(r'^/dev/.+\s+(?P<used>\d+)%\s+(?P<mount>.+)')
        hd_use = {}
        for line in fp:
            match = re_obj.search(line)
            if match is not None:
                hd_use[match.groupdict()['mount']] = match.groupdict()['used']
        fp.close()
        return  hd_use
def email(message):
msg = MIMEText(message, 'plain', 'utf-8')
msg['From'] = formataddr(["运维专用小号", '1195257477@qq.com'])
msg['To'] = formataddr(["大汉", '610323566@qq.com'])
msg['Subject'] = "磁盘监控报警"
server = smtplib.SMTP_SSL("smtp.qq.com", 465)
server.login("1195257477@qq.com", "xxxxxxxxxx")
server.sendmail('1195257477@qq.com', ['610323566@qq.com'], msg.as_string())
server.quit()
if __name__ == '__main__':
      for v in check_hd_use().values():
            if int(v)>hd_usage_rate_threshold:
               email(m+b+s+str(hd_usage_rate_threshold)+d)
6fc9b9972856b0f9fca1bbb2f77337a2688b5788 6fc9b9972856b0f9fca1bbb2f77337a2688b5788
更多教程

原文链接:https://yq.aliyun.com/articles/688582
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章