Skip to content

Commit 87789cb

Browse files
committed
Use joins to create trace ids and headers
1 parent c0a3ea9 commit 87789cb

File tree

1 file changed

+15
-18
lines changed
  • sdk-extension/opentelemetry-sdk-extension-aws/src/opentelemetry/sdk/extension/aws/trace/propagation

1 file changed

+15
-18
lines changed

sdk-extension/opentelemetry-sdk-extension-aws/src/opentelemetry/sdk/extension/aws/trace/propagation/aws_xray_format.py

+15-18
Original file line numberDiff line numberDiff line change
@@ -242,12 +242,12 @@ def inject(
242242
return
243243

244244
otel_trace_id = "{:032x}".format(span_context.trace_id)
245-
xray_trace_id = (
246-
TRACE_ID_VERSION
247-
+ TRACE_ID_DELIMITER
248-
+ otel_trace_id[:TRACE_ID_FIRST_PART_LENGTH]
249-
+ TRACE_ID_DELIMITER
250-
+ otel_trace_id[TRACE_ID_FIRST_PART_LENGTH:]
245+
xray_trace_id = TRACE_ID_DELIMITER.join(
246+
[
247+
TRACE_ID_VERSION,
248+
otel_trace_id[:TRACE_ID_FIRST_PART_LENGTH],
249+
otel_trace_id[TRACE_ID_FIRST_PART_LENGTH:],
250+
]
251251
)
252252

253253
parent_id = "{:016x}".format(span_context.span_id)
@@ -260,18 +260,15 @@ def inject(
260260

261261
# TODO: Add OT trace state to the X-Ray trace header
262262

263-
trace_header = (
264-
TRACE_ID_KEY
265-
+ KEY_AND_VALUE_DELIMITER
266-
+ xray_trace_id
267-
+ KV_PAIR_DELIMITER
268-
+ PARENT_ID_KEY
269-
+ KEY_AND_VALUE_DELIMITER
270-
+ parent_id
271-
+ KV_PAIR_DELIMITER
272-
+ SAMPLED_FLAG_KEY
273-
+ KEY_AND_VALUE_DELIMITER
274-
+ sampling_flag
263+
trace_header = KV_PAIR_DELIMITER.join(
264+
[
265+
KEY_AND_VALUE_DELIMITER.join([key, value])
266+
for key, value in [
267+
(TRACE_ID_KEY, xray_trace_id),
268+
(PARENT_ID_KEY, parent_id),
269+
(SAMPLED_FLAG_KEY, sampling_flag),
270+
]
271+
]
275272
)
276273

277274
set_in_carrier(

0 commit comments

Comments
 (0)