python 电子邮件Простаясистемалогированиясуведомлениемна

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 电子邮件Простаясистемалогированиясуведомлениемна相关的知识,希望对你有一定的参考价值。

#coding: utf-8

import logging

from datetime import date


class TlsSMTPHandler(logging.handlers.SMTPHandler):
    def emit(self, record):
        try:
            import smtplib
            from email.mime.text import MIMEText
            
            msg = MIMEText(self.format(record))
            msg['Subject'] = self.getSubject(record)
            msg['From'] = self.fromaddr
            msg['To'] = " ,".join(self.toaddrs)
            
            smtpserver = smtplib.SMTP(self.mailhost)
            smtpserver.ehlo()
            smtpserver.starttls()
            smtpserver.login(self.username, self.password)
            smtpserver.sendmail(self.fromaddr, self.toaddrs, msg.as_string())
            smtpserver.close()
        except (KeyboardInterrupt, SystemExit):
            raise
        except:
            self.handleError(record)

class myFileHandler(logging.FileHandler):
    def __init__(self, filename, mode='a', encoding=None, delay=False, onefile=False):
        if not onefile:
            filename = '%s___%s' % (date.today().strftime("%d %m %Y"), filename)
        super(myFileHandler,self).__init__(filename, mode, encoding, delay)
[loggers] 
keys=root 

[handlers] 
keys=handler1, handler2, handler3 

[formatters] 
keys = formatter1 

[logger_root] 
qualname=main 
level=DEBUG 
handlers=handler1,handler2,handler3 

[handler_handler1] 
class=StreamHandler 
level=DEBUG 
formatter=formatter1 
args=(sys.stdout,) 

[handler_handler2] 
class=MyHandler.myFileHandler 
level=INFO 
formatter=formatter1 
args=('my_app.log','a', None, False, False) 

[handler_handler3] 
class=MyHandler.TlsSMTPHandler 
level=ERROR 
formatter=formatter1 
args=('smtp.mail.ru','notreply_service@mail.ru',['asAlbert@narod.ru',],'ERROR!',('notreply_service@mail.ru','1111111'))

[formatter_formatter1] 
format=%(asctime)s [%(levelname)s] in \'%(module)s\' at line %(lineno)d: %(message)s
datefmt=%Y-%m-%d %H:%M:%S 
class=logging.Formatter
# -*- coding: utf-8 -*- 
import logging
import logging.config 

logging.config.fileConfig('log.conf') 

log=logging.getLogger('main') 

log.log(1, 'low level message') 
log.debug("debug message") 
log.info("info message") 
log.warn("warn message") 
log.error("error message") 

以上是关于python 电子邮件Простаясистемалогированиясуведомлениемна的主要内容,如果未能解决你的问题,请参考以下文章

python Костыльдляпереименованияатомоввpdbсежамивсоответствииснумерациейдимеров。

php РегистрацияCPT,удалениеизссылокимяCPTипереадресацияприпопыткезапроситьCPTподефолтномуадресу。

python Скриптпреобразованияматрицызаполняемойпострочновматрицузаполняемуюпоспирали---найденчерезгугл

javascript Автоматическаягенерацияimdlприэкспорте.pdf

css Скрытиеэлемента,оставляядоступдляскрин-ридера

css Когдатекстразбиваетсянаколонки,тобраузерпытаетсяравномернораспределитьсодержимоеблокапоуказанном