|
7 | 7 | baggageHeaderToDynamicSamplingContext, |
8 | 8 | debug, |
9 | 9 | generateSentryTraceHeader, |
| 10 | + generateTraceparentHeader, |
10 | 11 | getClient, |
11 | 12 | getCurrentScope, |
12 | 13 | getDynamicSamplingContextFromScope, |
@@ -54,7 +55,7 @@ export class SentryPropagator extends W3CBaggagePropagator { |
54 | 55 | const activeSpan = trace.getSpan(context); |
55 | 56 | const url = activeSpan && getCurrentURL(activeSpan); |
56 | 57 |
|
57 | | - const tracePropagationTargets = getClient()?.getOptions()?.tracePropagationTargets; |
| 58 | + const { tracePropagationTargets, propagateTraceparent } = getClient()?.getOptions() || {}; |
58 | 59 | if (!shouldPropagateTraceForUrl(url, tracePropagationTargets, this._urlMatchesTargetsMap)) { |
59 | 60 | DEBUG_BUILD && |
60 | 61 | debug.log('[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:', url); |
@@ -85,6 +86,10 @@ export class SentryPropagator extends W3CBaggagePropagator { |
85 | 86 | }, baggage); |
86 | 87 | } |
87 | 88 |
|
| 89 | + if (propagateTraceparent) { |
| 90 | + setter.set(carrier, 'traceparent', generateTraceparentHeader(traceId, spanId, sampled)); |
| 91 | + } |
| 92 | + |
88 | 93 | // We also want to avoid setting the default OTEL trace ID, if we get that for whatever reason |
89 | 94 | if (traceId && traceId !== INVALID_TRACEID) { |
90 | 95 | setter.set(carrier, SENTRY_TRACE_HEADER, generateSentryTraceHeader(traceId, spanId, sampled)); |
|
0 commit comments