我已经设置了我的 Python GAE 应用程序,以便在请求处理程序引发异常时收到一封电子邮件。为此,我只是子类化webapp2.RequestHandler
并覆盖handle_exception
,以向我发送一封包含相关详细信息的电子邮件。
当任务队列中的任务引发异常时,是否可以收到电子邮件?
编辑:添加更多细节,因为我最初的问题不清楚。:)
我使用以下代码向自己发送一封请求处理程序异常的电子邮件:
class MyRequestHandler(webapp2.RequestHandler):
def handle_exception(self, exception, debug_mode):
...
mail.send_mail_to_admins(sender="me@example.com", ...)
...
通过这种方式,我会收到一封请求处理程序引发的任何异常的电子邮件。
当我使用deferred library提交任务时,我还想收到有关异常情况的电子邮件。在这种情况下,我认为我不能使用自定义请求处理程序。我想我可以在我的所有调用中放置一个包装函数deferred.defer()
:
def my_deferred(...):
try:
deferred.defer(...)
except Exception, msg:
mail.send_mail_to_admins(sender="me@example.com", ...)
有没有更好的方法来实现这一点?