Skip to content

Commit 3d4d8b5

Browse files
authored
fix(propagator-jaeger): zero pad extracted trace id to 32 characters (#1986)
fixes #1983
1 parent 8e2e2a9 commit 3d4d8b5

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

packages/opentelemetry-propagator-jaeger/src/JaegerHttpTracePropagator.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,10 @@ function deserializeSpanContext(serializedString: string): SpanContext | null {
9595
if (headers.length !== 4) {
9696
return null;
9797
}
98-
const [traceId, spanId, , flags] = headers;
9998

99+
const [_traceId, spanId, , flags] = headers;
100+
101+
const traceId = _traceId.padStart(32, '0');
100102
const traceFlags = flags.match(/^[0-9a-f]{2}$/i) ? parseInt(flags) & 1 : 1;
101103

102104
return { traceId, spanId, isRemote: true, traceFlags };

packages/opentelemetry-propagator-jaeger/test/JaegerHttpTracePropagator.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ describe('JaegerHttpTracePropagator', () => {
113113

114114
assert.deepStrictEqual(extractedSpanContext, {
115115
spanId: '45fd2a9709dadcf1',
116-
traceId: '9c41e35aeb6d1272',
116+
traceId: '00000000000000009c41e35aeb6d1272',
117117
isRemote: true,
118118
traceFlags: TraceFlags.SAMPLED,
119119
});
@@ -132,7 +132,7 @@ describe('JaegerHttpTracePropagator', () => {
132132

133133
assert.deepStrictEqual(extractedSpanContext, {
134134
spanId: '5ac292c4a11a163e',
135-
traceId: 'ac1f3dc3c2c0b06e',
135+
traceId: '0000000000000000ac1f3dc3c2c0b06e',
136136
isRemote: true,
137137
traceFlags: TraceFlags.SAMPLED,
138138
});

0 commit comments

Comments
 (0)