Skip to content

Commit 4c25c91

Browse files
committed
Add X-Instana-L header support for inject.
1 parent 17d5ea2 commit 4c25c91

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

instana/http_propagator.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,10 @@ class HTTPPropagator():
2222

2323
HEADER_KEY_T = 'X-Instana-T'
2424
HEADER_KEY_S = 'X-Instana-S'
25+
HEADER_KEY_L = 'X-Instana-L'
2526
ALT_HEADER_KEY_T = 'HTTP_X_INSTANA_T'
2627
ALT_HEADER_KEY_S = 'HTTP_X_INSTANA_S'
28+
ALT_HEADER_KEY_L = 'HTTP_X_INSTANA_L'
2729

2830
def inject(self, span_context, carrier):
2931
try:
@@ -33,9 +35,11 @@ def inject(self, span_context, carrier):
3335
if type(carrier) is dict or hasattr(carrier, "__dict__"):
3436
carrier[self.HEADER_KEY_T] = trace_id
3537
carrier[self.HEADER_KEY_S] = span_id
38+
carrier[self.HEADER_KEY_L] = "1"
3639
elif type(carrier) is list:
3740
carrier.append((self.HEADER_KEY_T, trace_id))
3841
carrier.append((self.HEADER_KEY_S, span_id))
42+
carrier.append((self.HEADER_KEY_L, "1"))
3943
else:
4044
raise Exception("Unsupported carrier type", type(carrier))
4145

@@ -54,9 +58,9 @@ def extract(self, carrier): # noqa
5458
# Look for standard X-Instana-T/S format
5559
if self.HEADER_KEY_T in dc and self.header_key_s in dc:
5660
trace_id = util.header_to_id(dc[self.HEADER_KEY_T])
57-
span_id = util.header_to_id(dc[self.header_key_s])
61+
span_id = util.header_to_id(dc[self.HEADER_KEY_S])
5862

59-
# Alternatively check for HTTP_X_INSTANA_T/S style
63+
# Alternatively check for alternate HTTP_X_INSTANA_T/S style
6064
elif self.ALT_HEADER_KEY_T in dc and self.ALT_HEADER_KEY_S in dc:
6165
trace_id = util.header_to_id(dc[self.ALT_HEADER_KEY_T])
6266
span_id = util.header_to_id(dc[self.ALT_HEADER_KEY_S])

0 commit comments

Comments
 (0)