蟒蛇的日志处理程序 http://docs.python.org/library/logging.handlers.html都很棒。其中一些,例如SMTP处理程序 http://docs.python.org/library/logging.handlers.html#smtphandler可能需要很长时间才能执行(联系 SMTP 服务器等)。它们是否在单独的线程上执行,以免阻塞主程序?
SMTP处理程序 http://docs.python.org/library/logging.handlers.html#smtphandler uses smtplib http://docs.python.org/library/smtplib.html?highlight=smtplib#module-smtplib当使用此库发送电子邮件时,您的进程将被阻止,直到正确发送为止,不会创建任何线程。
如果您不想在发送电子邮件时阻止进程,则必须实现自己的 SMTPHandler 并覆盖emit(self, record)
method.
阻塞较少的处理程序是系统日志处理程序 http://docs.python.org/library/logging.handlers.html?highlight=sysloghandler#logging.handlers.SysLogHandler,因为它通常是本地通信,并且在 UDP 中,因此系统不会等待来自目的地的任何确认。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)