11

我有一个用 Django 构建的网站。

当生产站点发生错误时,Django 会自动将堆栈跟踪发送到 settings.py 中的 ADMINS 列表中列出的电子邮件地址。

我希望这个堆栈跟踪包含每个堆栈帧的局部变量(就像站点处于调试模式时的标准堆栈跟踪一样)。

有任何想法吗?

谢谢!

4

1 回答 1

14

设置它真的很简单。只需'include_html': True输入正在为您发送错误电子邮件的处理程序的日志记录配置。

例如(这是除“include_html”行之外的默认日志处理程序):

'handlers': {
    'mail_admins': {
        'level': 'ERROR',
        'filters': ['require_debug_false',],
        'class': 'django.utils.log.AdminEmailHandler',
        'include_html': True
    }
}

这包括错误电子邮件中的 html 附件,其中包含您在 DEBUG=True 时获得的错误页面的内容。Django 文档有更多细节和关于安全性的说明。

您还可以查看设置使用的子类的日志记录处理程序,django.utils.log.AdminEmailHandler如果django.views.debug.ExceptionReporter您需要自定义更多内容。

于 2013-03-24T00:29:21.417 回答