1

有没有一种优雅的方法来检测我的谷歌应用程序引擎应用程序在向应用程序请求期间是否有错误,并在出现错误时写出更详细的日志?

我有相当多的“调试”级别日志记录,但我想删除所有这些,只在发生错误时显示调试信息。

4

2 回答 2

1

如果您使用的是 webapp2,我建议在使用下一个代码的请求期间执行此操作:

app = webapp2.WSGIApplication(debug = os.environ['SERVER_SOFTWARE'].startswith('Dev'), config=config.webapp2_config)

app.error_handlers[404] = handle_error
app.error_handlers[500] = handle_error
routes.add_routes(app)

您可以在此处查看该 handle_error 的示例: https ://github.com/coto/gae-boilerplate/blob/master/boilerplate/lib/basehandler.py#L70

于 2012-07-22T18:52:01.917 回答
0

您需要从LogService API文档开始;获取并过滤一些 request_logs(记得包含 app_logs);对于任何 req_log,您都可以获得相关的 app_logs。任何 app_log 都具有三个属性(时间、级别和消息)。你要找的是消息属性。

req_logs = logservice.fetch(start_time=time.time() - 3600,
                            end_time=time.time(),
                            minimum_log_level=logservice.LOG_LEVEL_ERROR,
                            include_app_logs=True)
for req_log in req_logs:
    for app_log in req_log.app_logs:
        print app_log.message
于 2012-07-22T00:02:01.340 回答