Я пытаюсь использовать модуль Python logging
для отправки писем, содержащих журналы. Проблема, с которой я сталкиваюсь, заключается в том, что каждый раз, когда я пишу запись в журнале, отправляется электронное письмо. Как мне помещать в очередь сообщения журнала и отправлять одно электронное письмо по завершении script?
У меня такое ощущение, что оно выполняется с помощью метода emit()
, но я не могу понять, как его использовать.
import logging, logging.handlers
log = logging.getLogger("mylogger")
log.setLevel(logging.DEBUG)
h2 = logging.handlers.SMTPHandler(mailhost='mailserver',
fromaddr='[email protected]',
toaddrs=['[email protected]'],
subject='The log',
credentials=('user','pwd'),
secure=None)
h2.setLevel(logging.INFO)
h2.setFormatter(f)
log.addHandler(h2)
log.info("Did something")
log.info("Did something else")
log.info("This would send a third email. :-(")