[python小记] logging模块SMTPhandler实现日志邮件报警
2018-01-10 16:18
746 查看
前言:一般开发中日志会输出到console,log file,mail中,上篇章简述了logging模块加载yaml配置输出到控制台和文件中logging模块yaml配置,本文会详述logging如何发送email,嗯
[1]最重要的是实现SMTPHanler的设置,简述一下:
The
located in the
supports sending logging messages to an email address via SMTP.(该类在logging.handler中,支持通过SMTP协议发送日志到邮箱)
其中SMTP(Simple
Mail Transfer Protocol)即简单传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式,通过SMTP协议所指定的服务器,就可以把E-mail寄到收信人的服务器上了
[2]参数解析如下(API详见Logging
handlers):
class
mailhost:指定的服务器,在这里笔者用的是smtp.163.com,port=25,两个参数使用tuple存放('smtp.163.com',25)
fromaddr:即发送人
toaddr:收件人,多个邮箱用list存储['test1@163.com','test2@163.com']
subject:邮件主题
credentials:凭证需要你的邮箱用户名和SMTP协议密码,可以自己设置,用户名密码也是以tuple形式存储('username','password') 注意:这里的密码不是邮箱登录密码
secure:指定的安全协议,可以不用设置 timeout:发送邮件的时间间隔
[3]代码如下:
[4]运行代码
qq和163邮箱分别收到邮件报警,搞定.
[1]最重要的是实现SMTPHanler的设置,简述一下:
The
SMTPHandlerclass,
located in the
logging.handlersmodule,
supports sending logging messages to an email address via SMTP.(该类在logging.handler中,支持通过SMTP协议发送日志到邮箱)
其中SMTP(Simple
Mail Transfer Protocol)即简单传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式,通过SMTP协议所指定的服务器,就可以把E-mail寄到收信人的服务器上了
[2]参数解析如下(API详见Logging
handlers):
class
logging.handlers.
SMTPHandler(mailhost, fromaddr, toaddrs, subject, credentials=None, secure=None, timeout=1.0)
mailhost:指定的服务器,在这里笔者用的是smtp.163.com,port=25,两个参数使用tuple存放('smtp.163.com',25)
fromaddr:即发送人
toaddr:收件人,多个邮箱用list存储['test1@163.com','test2@163.com']
subject:邮件主题
credentials:凭证需要你的邮箱用户名和SMTP协议密码,可以自己设置,用户名密码也是以tuple形式存储('username','password') 注意:这里的密码不是邮箱登录密码
secure:指定的安全协议,可以不用设置 timeout:发送邮件的时间间隔
[3]代码如下:
errlog = logging.getLogger() sh = logging.handlers.SMTPHandler(("smtp.163.com", 25), '****@163.com', ['46*****@qq.com', '*****@163.com'], "logging from my app", credentials=('******', '*****'), ) errlog.addHandler(sh) try: a = 1 / 0 except: errlog.warning("hha", exc_info=True)
[4]运行代码
qq和163邮箱分别收到邮件报警,搞定.
相关文章推荐
- Linux中使用shell+python实现监控系统负载+邮件报警
- python 实现邮件报警
- python 监控日志并发送邮件报警
- 系统访问日志统计及邮件发送脚本--python实现
- zabbix通过python脚本实现邮件报警
- Python3 实现简易ping监控并发送报警邮件
- Linux中运行python实现错误日志定时报警
- python实现自动发送报警监控邮件
- zabbix实现Python邮件报警
- python实现监控磁盘情况,并邮件报警
- python实现监控URL的一个值小于规定的值--邮件报警
- Python学习之pyinotify监控Linux下文件,并实现邮件报警
- python实现监控磁盘情况,并邮件报警
- [Python--] Python logging模块实现邮件报警
- Zabbix3.0.2使用外部python脚本实现邮件报警
- 利用python实现简单的邮件发送客户端示例
- python实现邮件发送
- PYTHON实现简单写文本日志
- python实现下载pop3邮件保存到本地
- python实现自动监控网站并发送邮件告警