使用自定义 send_email 报告 Django 错误

Posted

技术标签:

【中文标题】使用自定义 send_email 报告 Django 错误【英文标题】:Django Error reporting with Custom send_email 【发布时间】:2021-02-01 22:19:40 【问题描述】:

我需要您的帮助以通过电子邮件生成 django 错误报告。

我使用带有 Gmail API 的服务帐户来授权和发送电子邮件。

这如何与默认的 django 错误报告 send_email 一起使用。

我知道我必须在设置中添加以下内容,并且调试必须为 false:

管理员、经理、SERVER_EMAIL

【问题讨论】:

【参考方案1】:

设置电子邮件处理后端(有关 SMTP 电子邮件,请参阅 https://docs.djangoproject.com/en/3.1/topics/email/#smtp-backend,或有关将 Gmail API 配置为 EmailBackend 的示例,请参阅 https://github.com/dolfim/django-gmailapi-backend/blob/master/gmailapi_backend/mail.py)。

然后设置AdminEmailHandler (https://docs.djangoproject.com/en/3.1/topics/logging/#django.utils.log.AdminEmailHandler) 以使用您设置的EmailBackend 记录错误消息。

【讨论】:

我已经设置了以上所有内容,测试了它工作的电子邮件后端。但是,不会发送错误电子邮件。知道我添加了邮件处理程序并提到了我的自定义电子邮件后端。【参考方案2】:

我终于设法在没有设置后端电子邮件的情况下发送。

    我在设置中设置了处理程序。 创建了 CustomAdminHandler.py 并使用我自己的发送电子邮件功能覆盖了 send_mail。

没想到这么简单。

【讨论】:

以上是关于使用自定义 send_email 报告 Django 错误的主要内容,如果未能解决你的问题,请参考以下文章

使用HTMLTestRunner生成测试报告并发送邮件,但每次都是等到执行完邮件发送的代码才能生成测试报告?

CRM 自定义上下文报告

谷歌分析核心报告 API;或使用自定义维度过滤

Google Analytics 在自定义报告中排除空的自定义变量

使用 sonar-runner 自动为 sonarqube 新项目报告应用自定义权限模板

使用 -Xfatal-warnings 但忽略弃用警告/使用 SBT 的自定义报告器