Skip to content

Commit e34831e

Browse files
authored
Merge pull request #641 from mxiamxia/fix_trace_id
TraceId timestamp supports string starts with '0'
2 parents a761da8 + 7d28f6e commit e34831e

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

packages/core/lib/segments/attributes/trace_id.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ class TraceID {
5656
if (timestamp === 'NaN') {
5757
logger.getLogger().error('Trace ID timestamp must be a hex-encoded value');
5858
return traceID;
59+
} else {
60+
timestamp = timestamp.padStart(8, '0');
5961
}
6062

6163
traceID.version = version;

packages/core/test/unit/segments/attributes/trace_id.test.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,12 @@ describe('TraceID', function() {
4444
var traceId = TraceID.FromString(traceStr);
4545
assert.equal(traceId.toString(), traceStr);
4646
});
47+
48+
it('should keep leading 0\'s for trace ID from given string', function() {
49+
const traceStr = '1-00fbe041-2c7ad569f5d6ff149137be86';
50+
var traceId = TraceID.FromString(traceStr);
51+
assert.equal(traceId.version, 1);
52+
assert.equal(traceId.timestamp, '00fbe041');
53+
assert.equal(traceId.id, '2c7ad569f5d6ff149137be86');
54+
});
4755
});

0 commit comments

Comments
 (0)