アプリケーションへのリクエスト中にGoogleAppEngineアプリケーションでエラーが発生したかどうかを検出し、エラーが発生した場合はさらに詳細なログを書き出すための洗練された方法はありますか?
かなりの「デバッグ」レベルのログがありますが、それらをすべて削除し、エラーが発生した場合にのみデバッグ情報を表示したいと思います。
アプリケーションへのリクエスト中にGoogleAppEngineアプリケーションでエラーが発生したかどうかを検出し、エラーが発生した場合はさらに詳細なログを書き出すための洗練された方法はありますか?
かなりの「デバッグ」レベルのログがありますが、それらをすべて削除し、エラーが発生した場合にのみデバッグ情報を表示したいと思います。
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
LogService APIドキュメントから始める必要があります。いくつかの request_logs を取得してフィルタリングします (忘れずに app_logs を含めてください)。どの req_log についても、関連する app_logs を取得できます。どの app_log にも 3 つのプロパティ (時間、レベル、メッセージ) があります。あなたが探しているのはメッセージプロパティです。
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