Skip to content

Commit 2757171

Browse files
committed
added if callable check
1 parent a308044 commit 2757171

File tree

1 file changed

+10
-5
lines changed
  • instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask

1 file changed

+10
-5
lines changed

instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/__init__.py

+10-5
Original file line numberDiff line numberDiff line change
@@ -188,19 +188,22 @@ def _teardown_request(exc):
188188
class _InstrumentedFlask(flask.Flask):
189189

190190
_tracer_provider = None
191-
191+
_request_hook = None
192+
_response_hook = None
193+
192194
def __init__(self, *args, **kwargs):
193195
super().__init__(*args, **kwargs)
194196

195197
self._original_wsgi_ = self.wsgi_app
196-
self.wsgi_app = _rewrapped_app(self.wsgi_app, _InstrumentedFlask.response_hook)
198+
199+
self.wsgi_app = _rewrapped_app(self.wsgi_app, _InstrumentedFlask._response_hook)
197200

198201
tracer = trace.get_tracer(
199202
__name__, __version__, _InstrumentedFlask._tracer_provider
200203
)
201204

202205
_before_request = _wrapped_before_request(
203-
_InstrumentedFlask.request_hook, tracer,
206+
_InstrumentedFlask._request_hook, tracer,
204207
)
205208
self._before_request = _before_request
206209
self.before_request(_before_request)
@@ -217,8 +220,10 @@ def _instrument(self, **kwargs):
217220
self._original_flask = flask.Flask
218221
request_hook = kwargs.get("request_hook")
219222
response_hook = kwargs.get("response_hook")
220-
_InstrumentedFlask.request_hook = request_hook
221-
_InstrumentedFlask.response_hook = response_hook
223+
if callable(request_hook):
224+
_InstrumentedFlask._request_hook = request_hook
225+
if callable(response_hook):
226+
_InstrumentedFlask._response_hook = response_hook
222227
flask.Flask = _InstrumentedFlask
223228
tracer_provider = kwargs.get("tracer_provider")
224229
_InstrumentedFlask._tracer_provider = tracer_provider

0 commit comments

Comments
 (0)