使用自定义 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 错误的主要内容,如果未能解决你的问题,请参考以下文章

python 一类自定义mongo客户端

将位置坐标的 Mongo BSON 数组反序列化为自定义 C# 类

spring data mongo 不能 pikup 自定义 ZonedDateTime 转换器,为啥?

mongo自定义存储数据库文件位置

使用带有自定义引导样式的 Django 模板放置 <select> 字段

CRM 自定义上下文报告