UNPKG

@sentry/utils

Version:
39 lines (35 loc) 1.03 kB
Object.defineProperty(exports, '__esModule', { value: true }); var TRACEPARENT_REGEXP = new RegExp( '^[ \\t]*' + // whitespace '([0-9a-f]{32})?' + // trace_id '-?([0-9a-f]{16})?' + // span_id '-?([01])?' + // sampled '[ \\t]*$', // whitespace ); /** * Extract transaction context data from a `sentry-trace` header. * * @param traceparent Traceparent string * * @returns Object containing data from the header, or undefined if traceparent string is malformed */ function extractTraceparentData(traceparent) { var matches = traceparent.match(TRACEPARENT_REGEXP); if (matches) { let parentSampled; if (matches[3] === '1') { parentSampled = true; } else if (matches[3] === '0') { parentSampled = false; } return { traceId: matches[1], parentSampled, parentSpanId: matches[2], }; } return undefined; } exports.TRACEPARENT_REGEXP = TRACEPARENT_REGEXP; exports.extractTraceparentData = extractTraceparentData; //# sourceMappingURL=tracing.js.map