From d7e04f6b199b2fcc65ddb2625e8d522710cdf81c Mon Sep 17 00:00:00 2001 From: Diego Date: Thu, 2 Apr 2026 10:00:19 -0400 Subject: [PATCH] fix(o11y): remove `gpc.client.language` attribute --- .../google/api/gax/tracing/SpanTracer.java | 4 ---- .../api/gax/tracing/SpanTracerTest.java | 13 ------------ .../showcase/v1beta1/it/ITOtelTracing.java | 21 ++++++------------- 3 files changed, 6 insertions(+), 32 deletions(-) diff --git a/sdk-platform-java/gax-java/gax/src/main/java/com/google/api/gax/tracing/SpanTracer.java b/sdk-platform-java/gax-java/gax/src/main/java/com/google/api/gax/tracing/SpanTracer.java index 73981445c718..98aa14dbc5b3 100644 --- a/sdk-platform-java/gax-java/gax/src/main/java/com/google/api/gax/tracing/SpanTracer.java +++ b/sdk-platform-java/gax-java/gax/src/main/java/com/google/api/gax/tracing/SpanTracer.java @@ -45,9 +45,6 @@ @BetaApi @InternalApi public class SpanTracer implements ApiTracer { - public static final String LANGUAGE_ATTRIBUTE = "gcp.client.language"; - - public static final String DEFAULT_LANGUAGE = "Java"; static final String CONTENT_LENGTH_KEY = "Content-Length"; @@ -103,7 +100,6 @@ private static String resolveAttemptSpanName(ApiTracerContext apiTracerContext) } private void buildAttributes() { - this.attemptAttributes.put(LANGUAGE_ATTRIBUTE, DEFAULT_LANGUAGE); this.attemptAttributes.putAll(this.apiTracerContext.getAttemptAttributes()); } diff --git a/sdk-platform-java/gax-java/gax/src/test/java/com/google/api/gax/tracing/SpanTracerTest.java b/sdk-platform-java/gax-java/gax/src/test/java/com/google/api/gax/tracing/SpanTracerTest.java index b1b68ca77573..8a47aa5ec6fb 100644 --- a/sdk-platform-java/gax-java/gax/src/test/java/com/google/api/gax/tracing/SpanTracerTest.java +++ b/sdk-platform-java/gax-java/gax/src/test/java/com/google/api/gax/tracing/SpanTracerTest.java @@ -84,19 +84,6 @@ void testAttemptLifecycle_startsAndEndsAttemptSpan() { verify(span).end(); } - @Test - void testAttemptStarted_includesLanguageAttribute() { - spanTracer.attemptStarted(new Object(), 1); - - ArgumentCaptor attributesCaptor = ArgumentCaptor.forClass(Attributes.class); - verify(spanBuilder).setAllAttributes(attributesCaptor.capture()); - - assertThat(attributesCaptor.getValue().asMap()) - .containsEntry( - io.opentelemetry.api.common.AttributeKey.stringKey(SpanTracer.LANGUAGE_ATTRIBUTE), - SpanTracer.DEFAULT_LANGUAGE); - } - @Test void testAttemptSucceeded_grpc() { ApiTracerContext context = diff --git a/sdk-platform-java/java-showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITOtelTracing.java b/sdk-platform-java/java-showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITOtelTracing.java index 1b35580fdafa..265361143ffa 100644 --- a/sdk-platform-java/java-showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITOtelTracing.java +++ b/sdk-platform-java/java-showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITOtelTracing.java @@ -42,7 +42,6 @@ import com.google.api.gax.rpc.TransportChannelProvider; import com.google.api.gax.rpc.UnavailableException; import com.google.api.gax.tracing.ObservabilityAttributes; -import com.google.api.gax.tracing.SpanTracer; import com.google.api.gax.tracing.SpanTracerFactory; import com.google.common.collect.ImmutableList; import com.google.protobuf.InvalidProtocolBufferException; @@ -134,11 +133,6 @@ void testTracing_successfulEcho_grpc() throws Exception { .findFirst() .orElseThrow(() -> new AssertionError("Incorrect span name")); assertThat(attemptSpan.getKind()).isEqualTo(SpanKind.CLIENT); - assertThat( - attemptSpan - .getAttributes() - .get(AttributeKey.stringKey(SpanTracer.LANGUAGE_ATTRIBUTE))) - .isEqualTo(SpanTracer.DEFAULT_LANGUAGE); assertThat( attemptSpan .getAttributes() @@ -205,11 +199,6 @@ void testTracing_successfulEcho_httpjson() throws Exception { .orElseThrow( () -> new AssertionError("Attempt span 'POST v1beta1/echo:echo' not found")); assertThat(attemptSpan.getKind()).isEqualTo(SpanKind.CLIENT); - assertThat( - attemptSpan - .getAttributes() - .get(AttributeKey.stringKey(SpanTracer.LANGUAGE_ATTRIBUTE))) - .isEqualTo(SpanTracer.DEFAULT_LANGUAGE); assertThat( attemptSpan .getAttributes() @@ -491,8 +480,9 @@ public void sendMessage(ReqT message) {} assertThrows(UnavailableException.class, () -> client.echo(echoRequest)); verifyErrorTypeAttribute("UNAVAILABLE"); - } - } + } + } + @Test void testTracing_statusCodes_grpc() throws Exception { SpanTracerFactory tracingFactory = new SpanTracerFactory(openTelemetrySdk); @@ -626,8 +616,9 @@ public String getHeaderValue(int index) { assertThrows(UnavailableException.class, () -> client.echo(echoRequest)); verifyErrorTypeAttribute("503"); - } - } + } + } + void testTracing_statusCodes_httpjson() throws Exception { SpanTracerFactory tracingFactory = new SpanTracerFactory(openTelemetrySdk); EchoRequest errorRequest =