我想用ereporter每天给我发送一封邮件,所有例外都来自我的应用程序。为此,我使用以下代码:
import webapp2, logging
from google.appengine.ext import ereporter
class SomeJob(webapp2.RequestHandler):
def get(self):
try:
#some job
except:
logging.exception('my text')
ereporter.register_logger()
我的应用程序yaml有以下参考(Python2.7):
^{pr2}$还有我的克罗恩·亚姆有以下内容:
^{3}$cron作业正常工作,只是不发送电子邮件。我注意到的是,当我查看应用程序仪表板并转到日志时,记录的异常有以下文本:
my text
None
我不知道是什么原因导致了“无”,但我怀疑这可能表明为什么我没有收到每日报告。有什么想法吗?在
我猜问题是你在记录数据后注册了记录器。在
在ereporter article中,它建议在全局级别注册记录器:
正如Samuel所指出的,必须在抛出异常之前注册记录器。最好的地方是在你相当于主.py. 但是,一旦您这样做,您应该看到调用的结果日志记录.异常(). ereporter将向您发送所有未处理的异常和您调用的所有异常日志记录.异常()在except:子句中。在
ereporter的一个警告是,它默认只发送昨天的异常。要让它向您发送今天的例外情况,请手动调用它并提供今天的日期,例如
您还可以编写自己的cron处理程序来包装ereporter并以编程方式提供今天的日期,如下所示:
^{pr2}$我计划这样做,这样我就可以得到每小时一次的异常报告。在
H/T:https://groups.google.com/forum/#!searchin/google-appengine/ereporter/google-appengine/G99VGhs5cls/bD1UXDEnQqcJ
相关问题 更多 >
编程相关推荐