Django不会在生产环境中发送调试错误

xjreopfe  于 2023-10-21  发布在  Go
关注(0)|答案(1)|浏览(118)

我有一个django应用程序在生产环境中运行,但服务器错误不会发送到已建立的电子邮件。这是我的settings.py:

ADMINS = [('Foo the man', "******@gmail.com")]
SERVER_EMAIL = os.getenv('SERVER_EMAIL')
EMAIL_HOST = os.getenv('EMAIL_HOST')
EMAIL_HOST_IMAP = os.getenv('EMAIL_HOST_IMAP')
EMAIL_PORT = '587'
EMAIL_HOST_USER = os.getenv('EMAIL_HOST_USER')
EMAIL_HOST_PASSWORD = os.getenv('EMAIL_HOST_PASSWORD')

来自应用程序内部的常规电子邮件正在正确发送,但调试错误没有发送,我不知道为什么。

zqdjd7g9

zqdjd7g91#

您可以查看以下内容:

  • DEBUG设置为False

如果DEBUG设置为True,则不会发送错误电子邮件

  • 查看LOGGING配置
LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'mail_admins': {
            'level': 'ERROR',
            'class': 'django.utils.log.AdminEmailHandler',
        },
    },
    'loggers': {
        'django': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': True,
        },
    },
}
  • 检查您的垃圾邮件/垃圾文件夹。有时这些错误邮件被归类为垃圾邮件
  • 错误类型Django只为未处理的异常发送错误邮件。如果你在视图或中间件中捕获所有异常,那么Django不会发送电子邮件

相关问题