如何在Django日志中看到与邮件相关的错误?

时间:2016-08-25 01:27:38

标签: python django email

我正在试图找出为什么邮件没有从我从邮件正常工作的完美工作应用程序复制的django应用程序发送。我试图让django在日志中吐出与邮件有关的东西是徒劳的,但没有任何东西出现。以下是我在settings.py中的设置:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
        },
        'simple': {
            'format': '%(levelname)s %(message)s'
        },
    },
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse'
        }
    },
    'handlers': {
        'mail_admins': {
            'level': 'DEBUG',
            'class': 'django.utils.log.AdminEmailHandler'
        },
        'console': {
            'level':'DEBUG',
            'class':'logging.StreamHandler',
            'formatter': 'simple'
        },
        'file': {
            'level': 'DEBUG',
            'class': 'logging.FileHandler',
            'filename': '/tmp/ooto.log',
            'formatter': 'verbose'
        },
    },
    'loggers': {
        'django.request': {
            'handlers': ['file'],
            'level': 'DEBUG',
            'propagate': True,
        },
        'django_opensso':{
            'handlers' : ['file'],
            'level' : 'DEBUG',
        },
        'timekeeper':{
            'handlers' : ['file'],
            'level' : 'DEBUG',
        },
    }

有人可以详细解释或发布一个如何从django中获取与邮件相关的错误的示例,以便我可以解决真正的问题吗?

1 个答案:

答案 0 :(得分:0)

django.core.mailsmtplib都没有使用Pythons日志记录模块。 smtplib中有一个写入控制台的简单日志记录工具。您必须在连接实例上设置运行.set_debuglevel(level),其中level是一个整数> 0

应该具有相同的结果:

import smtplib
smtplib.SMTP.debuglevel = 9

这是一个所谓的猴子补丁。小心它,很难追踪。