in packages/core/lib/utils.js [203:234]
processTraceData: function processTraceData(traceData) {
var amznTraceData = {};
var reservedKeywords = ['root', 'parent', 'sampled', 'self'];
var remainingBytes = 256;
if (!(typeof traceData === 'string' && traceData)) {
return amznTraceData;
}
traceData.split(';').forEach(function(header) {
if (!header) {
return;
}
var pair = header.split('=');
if (pair[0] && pair[1]) {
var key = pair[0].trim().toLowerCase();
var value = pair[1].trim().toLowerCase();
var reserved = reservedKeywords.indexOf(key) !== -1;
if (reserved) {
amznTraceData[key] = value;
} else if (!reserved && remainingBytes - (key.length + value.length) >= 0) {
amznTraceData[key] = value;
remainingBytes -= (key.length + value.length);
}
}
});
return amznTraceData;
},