Skip to content

Commit 3e0bd66

Browse files
committed
Do not attach empty sentry-trace and baggage headers
1 parent ebb01e3 commit 3e0bd66

File tree

19 files changed

+74
-34
lines changed

19 files changed

+74
-34
lines changed

sentry-android-okhttp/src/main/java/io/sentry/android/okhttp/SentryOkHttpInterceptor.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ class SentryOkHttpInterceptor(
6464
var code: Int? = null
6565
try {
6666
val requestBuilder = request.newBuilder()
67-
if (span != null &&
67+
if (span != null && !span.isNoOp &&
6868
PropagationTargetsUtils.contain(hub.options.tracePropagationTargets, request.url.toString())
6969
) {
7070
span.toSentryTrace().let {

sentry-apollo-3/src/main/java/io/sentry/apollo3/SentryApollo3HttpInterceptor.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class SentryApollo3HttpInterceptor @JvmOverloads constructor(private val hub: IH
3333

3434
var cleanedHeaders = removeSentryInternalHeaders(request.headers).toMutableList()
3535

36-
if (PropagationTargetsUtils.contain(hub.options.tracePropagationTargets, request.url)) {
36+
if (!span.isNoOp && PropagationTargetsUtils.contain(hub.options.tracePropagationTargets, request.url)) {
3737
val sentryTraceHeader = span.toSentryTrace()
3838
val baggageHeader = span.toBaggageHeader(request.headers.filter { it.name == BaggageHeader.BAGGAGE_HEADER }.map { it.value })
3939
cleanedHeaders.add(HttpHeader(sentryTraceHeader.name, sentryTraceHeader.value))

sentry-apollo/src/main/java/io/sentry/apollo/SentryApolloInterceptor.kt

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,16 +37,23 @@ class SentryApolloInterceptor(
3737
chain.proceedAsync(request, dispatcher, callBack)
3838
} else {
3939
val span = startChild(request, activeSpan)
40-
val sentryTraceHeader = span.toSentryTrace()
4140

42-
// we have no access to URI, no way to verify tracing origins
43-
val requestHeaderBuilder = request.requestHeaders.toBuilder()
44-
requestHeaderBuilder.addHeader(sentryTraceHeader.name, sentryTraceHeader.value)
45-
span.toBaggageHeader(listOf(request.requestHeaders.headerValue(BaggageHeader.BAGGAGE_HEADER)))?.let {
46-
requestHeaderBuilder.addHeader(it.name, it.value)
41+
val requestWithHeader = if (span.isNoOp) {
42+
request
43+
} else {
44+
val sentryTraceHeader = span.toSentryTrace()
45+
46+
// we have no access to URI, no way to verify tracing origins
47+
val requestHeaderBuilder = request.requestHeaders.toBuilder()
48+
requestHeaderBuilder.addHeader(sentryTraceHeader.name, sentryTraceHeader.value)
49+
span.toBaggageHeader(listOf(request.requestHeaders.headerValue(BaggageHeader.BAGGAGE_HEADER)))
50+
?.let {
51+
requestHeaderBuilder.addHeader(it.name, it.value)
52+
}
53+
val headers = requestHeaderBuilder.build()
54+
request.toBuilder().requestHeaders(headers).build()
4755
}
48-
val headers = requestHeaderBuilder.build()
49-
val requestWithHeader = request.toBuilder().requestHeaders(headers).build()
56+
5057
span.setData("operationId", requestWithHeader.operation.operationId())
5158
span.setData("variables", requestWithHeader.operation.variables().valueMap().toString())
5259

sentry-jdbc/src/main/java/io/sentry/jdbc/SentryJdbcEventListener.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public SentryJdbcEventListener() {
3030
@Override
3131
public void onBeforeAnyExecute(final @NotNull StatementInformation statementInformation) {
3232
final ISpan parent = hub.getSpan();
33-
if (parent != null) {
33+
if (parent != null && !parent.isNoOp()) {
3434
final ISpan span = parent.startChild("db.query", statementInformation.getSql());
3535
CURRENT_SPAN.set(span);
3636
}

sentry-openfeign/src/main/java/io/sentry/openfeign/SentryFeignClient.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,8 @@ public Response execute(final @NotNull Request request, final @NotNull Request.O
5555

5656
final RequestWrapper requestWrapper = new RequestWrapper(request);
5757

58-
if (PropagationTargetsUtils.contain(hub.getOptions().getTracePropagationTargets(), url)) {
58+
if (!span.isNoOp()
59+
&& PropagationTargetsUtils.contain(hub.getOptions().getTracePropagationTargets(), url)) {
5960
final SentryTraceHeader sentryTraceHeader = span.toSentryTrace();
6061
final @Nullable Collection<String> requestBaggageHeader =
6162
request.headers().get(BaggageHeader.BAGGAGE_HEADER);

sentry-opentelemetry/sentry-opentelemetry-core/src/main/java/io/sentry/opentelemetry/SentryPropagator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public <C> void inject(final Context context, final C carrier, final TextMapSett
3939
return;
4040
}
4141
final @Nullable ISpan sentrySpan = spanStorage.get(otelSpanContext.getSpanId());
42-
if (sentrySpan == null) {
42+
if (sentrySpan == null || sentrySpan.isNoOp()) {
4343
return;
4444
}
4545

sentry-spring-jakarta/src/main/java/io/sentry/spring/jakarta/tracing/SentrySpanAdvice.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public SentrySpanAdvice(final @NotNull IHub hub) {
3131
public Object invoke(final @NotNull MethodInvocation invocation) throws Throwable {
3232
final ISpan activeSpan = hub.getSpan();
3333

34-
if (activeSpan == null) {
34+
if (activeSpan == null || activeSpan.isNoOp()) {
3535
// there is no active transaction, we do not start new span
3636
return invocation.proceed();
3737
} else {

sentry-spring-jakarta/src/main/java/io/sentry/spring/jakarta/tracing/SentrySpanClientHttpRequestInterceptor.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,9 @@ public SentrySpanClientHttpRequestInterceptor(final @NotNull IHub hub) {
4949
request.getMethod() != null ? request.getMethod().name() : "unknown";
5050
span.setDescription(methodName + " " + request.getURI());
5151

52-
final SentryTraceHeader sentryTraceHeader = span.toSentryTrace();
53-
54-
if (PropagationTargetsUtils.contain(
52+
if (!span.isNoOp() && PropagationTargetsUtils.contain(
5553
hub.getOptions().getTracePropagationTargets(), request.getURI())) {
54+
final SentryTraceHeader sentryTraceHeader = span.toSentryTrace();
5655
request.getHeaders().add(sentryTraceHeader.getName(), sentryTraceHeader.getValue());
5756
@Nullable
5857
BaggageHeader baggage =

sentry-spring-jakarta/src/main/java/io/sentry/spring/jakarta/tracing/SentrySpanClientWebRequestFilter.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,11 @@ public SentrySpanClientWebRequestFilter(final @NotNull IHub hub) {
4141
final ISpan span = activeSpan.startChild("http.client");
4242
span.setDescription(request.method().name() + " " + request.url());
4343

44-
final SentryTraceHeader sentryTraceHeader = span.toSentryTrace();
45-
4644
final ClientRequest.Builder requestBuilder = ClientRequest.from(request);
4745

48-
if (PropagationTargetsUtils.contain(
46+
if (!span.isNoOp() && PropagationTargetsUtils.contain(
4947
hub.getOptions().getTracePropagationTargets(), request.url())) {
48+
final SentryTraceHeader sentryTraceHeader = span.toSentryTrace();
5049
requestBuilder.header(sentryTraceHeader.getName(), sentryTraceHeader.getValue());
5150

5251
final @Nullable BaggageHeader baggageHeader =

sentry-spring/src/main/java/io/sentry/spring/tracing/SentrySpanAdvice.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public SentrySpanAdvice(final @NotNull IHub hub) {
3131
public Object invoke(final @NotNull MethodInvocation invocation) throws Throwable {
3232
final ISpan activeSpan = hub.getSpan();
3333

34-
if (activeSpan == null) {
34+
if (activeSpan == null || activeSpan.isNoOp()) {
3535
// there is no active transaction, we do not start new span
3636
return invocation.proceed();
3737
} else {

0 commit comments

Comments
 (0)