码迷,mamicode.com
首页 > 编程语言 > 详细

阿里云创建邮件告警 python 脚本,执行超时

时间:2019-07-04 22:40:35      阅读:284      评论:0      收藏:0      [点我收藏+]

标签:login   coding   smt   告警脚本   end   smtplib   图片   utf-8   aliyun   

现象:
做了一个邮件告警脚本,python 写的,名称 mail.py,内容如下

#!/usr/bin/python
#coding:utf-8

import smtplib
from email.mime.text import MIMEText
import sys

mail_user = ‘admin@axxxxxxxxxxx.cn‘
mail_pass = ‘8xxxxxxxxxxxxj‘

def send_mail(to_list,subject,content):
    me = "zabbix 监控告警平台"+"<"+mail_user+">"
    msg = MIMEText(content, ‘plain‘, ‘utf-8‘)
    msg[‘Subject‘] = subject
    msg[‘From‘] = me
    msg[‘to‘] = to_list

    try:
        s = smtplib.SMTP("smtpdm.aliyun.com", 25)
        s.login(mail_user,mail_pass)
        s.sendmail(me,to_list,msg.as_string())
        s.close()
        return True
    except Exception,e:
        print str(e)
        return False

if __name__ == "__main__":
    send_mail(sys.argv[1], sys.argv[2], sys.argv[3])

但是在执行python脚本时总是超时,无法执行,而同一个脚本在自己虚拟机上能正常运行,查看了不少资料都是复制粘贴云云,没有此类问题汇总。
自己无意中想到可能是aliyun对25端口做了限制,为了验证自己的想法,将脚本中的 smtpdm.aliyun.com 后的 25 改为了 80端口

测试:
分别在两台不同的aliyun机器上执行了修改后的命令

[root@iZm5exxxxxxxxxx ~]# python mail.py ‘zxxxxxxxx@163.com‘ ‘teest‘ ‘testtt‘
[root@axxxxxx ~]# ./mail.py zxxxxxxxx@163.com "hello" "hello"

结果如下
技术图片
技术图片
成功!

总结:
aliyun发python邮件告警超时,更改端口号

阿里云创建邮件告警 python 脚本,执行超时

标签:login   coding   smt   告警脚本   end   smtplib   图片   utf-8   aliyun   

原文地址:https://blog.51cto.com/11530642/2417262

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!