From b597c246cd46f9818fb77acbfcf53b3ae80be183 Mon Sep 17 00:00:00 2001 From: Talha Kum Date: Fri, 8 Dec 2023 12:33:36 +0300 Subject: [PATCH] Add support for flask > 2.2 --- flask_log_request_id/request_id.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/flask_log_request_id/request_id.py b/flask_log_request_id/request_id.py index 9f38ea0..aa9f06f 100644 --- a/flask_log_request_id/request_id.py +++ b/flask_log_request_id/request_id.py @@ -15,13 +15,9 @@ def flask_ctx_get_request_id(): Get request id from flask's G object :return: The id or None if not found. """ - from flask import _app_ctx_stack as stack # We do not support < Flask 0.9 - - if stack.top is None: - raise ExecutedOutsideContext() - - g_object_attr = stack.top.app.config['LOG_REQUEST_ID_G_OBJECT_ATTRIBUTE'] - return g.get(g_object_attr, None) + if flask.has_app_context(): + g_object_attr = g.log_request_id_g_object_attribute + return g.get(g_object_attr, None) current_request_id = MultiContextRequestIdFetcher() @@ -73,6 +69,7 @@ def _persist_request_id(): To be used as a consumer of Flask.before_request event. """ + g.log_request_id_g_object_attribute = app.config['LOG_REQUEST_ID_G_OBJECT_ATTRIBUTE'] g_object_attr = current_app.config['LOG_REQUEST_ID_G_OBJECT_ATTRIBUTE'] setattr(g, g_object_attr, self._request_id_parser())