Skip to content

Commit 7cee3b5

Browse files
committed
Refactored workflows.transport.middleware.tracer for readability
1 parent a902583 commit 7cee3b5

File tree

1 file changed

+15
-14
lines changed

1 file changed

+15
-14
lines changed

src/workflows/transport/middleware/tracer.py

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -36,35 +36,36 @@ class TracerMiddleware(BaseTransportMiddleware):
3636
def __init__(self, service_name: str):
3737
self.service_name = service_name
3838

39-
def _get_trace_context(self, message):
40-
"""If a trace context exists in the recipe wrapper's environment, get it"""
39+
def _extract_trace_context(self, message):
40+
"""Retrieves span context from message"""
4141
try:
42-
#carrier = message['environment']['trace_context']
4342
carrier = message['trace_context']
4443
ctx = TraceContextTextMapPropagator().extract(carrier=carrier)
44+
print(f"Extracting {ctx}")
4545
return ctx
4646
except KeyError:
47+
print(f"Extracted nothing")
4748
return {}
4849

49-
def subscribe(self, call_next: Callable, channel, callback, **kwargs) -> int:
50-
print(f"call_next: {call_next}, channel: {channel}, callback: {callback}, kwargs: {kwargs}")
50+
def _inject_trace_context(self, message):
51+
"""Inserts trace context into message"""
52+
carrier = {}
53+
TraceContextTextMapPropagator().inject(carrier)
54+
message['trace_context'] = carrier
55+
print(f"injecting {carrier}")
56+
5157

58+
def subscribe(self, call_next: Callable, channel, callback, **kwargs) -> int:
5259
@functools.wraps(callback)
5360
def wrapped_callback(header, message):
54-
print(f"wrapped_callback header: {header}, message: {message}")
55-
56-
ctx = self._get_trace_context(message)
61+
ctx = self._extract_trace_context(message)
5762
with tracer.start_as_current_span(self.service_name, context=ctx) as span:
5863
if ctx == {}:
59-
print("inserting trace_context into message")
60-
message['trace_context'] = "foo"
64+
self._inject_trace_context(message)
6165
return callback(header, message)
6266

6367
return call_next(channel, wrapped_callback, **kwargs)
6468

6569
def send(self, call_next: Callable, destination, message, **kwargs):
66-
carrier = {}
67-
TraceContextTextMapPropagator().inject(carrier)
68-
message['trace_context'] = carrier
69-
70+
self._inject_trace_context(message)
7071
call_next(destination, message, **kwargs)

0 commit comments

Comments
 (0)