Skip to content

Commit ae2a770

Browse files
hannsemanbeniwohli
authored andcommitted
Use native string for disttracing header (#390)
* Use native strings for headers * Remove redundant str * Align to_str with from_string * Black
1 parent 8e820e8 commit ae2a770

File tree

3 files changed

+8
-9
lines changed

3 files changed

+8
-9
lines changed

elasticapm/instrumentation/packages/urllib3.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ def call(self, module, method, wrapped, instance, args, kwargs):
5656
trace_parent = transaction.trace_parent.copy_from(
5757
span_id=parent_id, trace_options=TracingOptions(recorded=True)
5858
)
59-
headers[constants.TRACEPARENT_HEADER_NAME] = trace_parent.to_ascii()
59+
headers[constants.TRACEPARENT_HEADER_NAME] = trace_parent.to_string()
6060
return wrapped(*args, **kwargs)
6161

6262
def mutate_unsampled_call_args(self, module, method, wrapped, instance, args, kwargs, transaction):
@@ -69,5 +69,5 @@ def mutate_unsampled_call_args(self, module, method, wrapped, instance, args, kw
6969
if headers is None:
7070
headers = {}
7171
kwargs["headers"] = headers
72-
headers[constants.TRACEPARENT_HEADER_NAME] = trace_parent.to_ascii()
72+
headers[constants.TRACEPARENT_HEADER_NAME] = trace_parent.to_string()
7373
return args, kwargs

elasticapm/utils/disttracing.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ def copy_from(self, version=None, trace_id=None, span_id=None, trace_options=Non
2222
)
2323

2424
def to_string(self):
25-
return u"{:02x}-{}-{}-{:02x}".format(self.version, self.trace_id, self.span_id, self.trace_options.asByte)
25+
return "{:02x}-{}-{}-{:02x}".format(self.version, self.trace_id, self.span_id, self.trace_options.asByte)
2626

2727
def to_ascii(self):
2828
return self.to_string().encode("ascii")

tests/utils/test_disttracing_header.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import pytest
22

3-
from elasticapm.utils import compat
43
from elasticapm.utils.disttracing import TraceParent
54

65

@@ -14,15 +13,15 @@ def test_tracing_options(tracing_bits, expected):
1413
def test_unknown_header_components_ignored():
1514
header = "01-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-03-xyz"
1615
trace_parent = TraceParent.from_string(header)
17-
assert trace_parent.to_ascii().decode("ascii") == "01-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-03"
16+
assert trace_parent.to_string() == "01-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-03"
1817

1918

20-
def test_trace_parent_to_ascii():
19+
def test_trace_parent_to_str():
2120
header = "00-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-03"
2221
trace_parent = TraceParent.from_string(header)
23-
result = trace_parent.to_ascii()
24-
assert isinstance(result, compat.binary_type)
25-
assert header.encode("ascii") == result
22+
result = trace_parent.to_string()
23+
assert isinstance(result, str)
24+
assert header == result
2625

2726

2827
def test_trace_parent_wrong_version(caplog):

0 commit comments

Comments
 (0)