From bce557cc2dc767628bed6aac87301a1be7c5431b Mon Sep 17 00:00:00 2001 From: rxliuli Date: Tue, 4 Nov 2025 05:03:50 +0800 Subject: init commit --- .../node_modules/@sentry/utils/esm/tracing.js | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 shared/logger/node_modules/@sentry/utils/esm/tracing.js (limited to 'shared/logger/node_modules/@sentry/utils/esm/tracing.js') diff --git a/shared/logger/node_modules/@sentry/utils/esm/tracing.js b/shared/logger/node_modules/@sentry/utils/esm/tracing.js new file mode 100644 index 0000000..546507c --- /dev/null +++ b/shared/logger/node_modules/@sentry/utils/esm/tracing.js @@ -0,0 +1,39 @@ +const 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) { + const matches = traceparent.match(TRACEPARENT_REGEXP); + + if (!traceparent || !matches) { + // empty string or no matches is invalid traceparent data + return undefined; + } + + let parentSampled; + if (matches[3] === '1') { + parentSampled = true; + } else if (matches[3] === '0') { + parentSampled = false; + } + + return { + traceId: matches[1], + parentSampled, + parentSpanId: matches[2], + }; +} + +export { TRACEPARENT_REGEXP, extractTraceparentData }; +//# sourceMappingURL=tracing.js.map -- cgit v1.2.3