Skip to content

Commit 78f7c6b

Browse files
committed
refactor(o11y): pass LibraryMetadata directly to GoldenSignalsMetricsRecorder
Instead of manually extracting properties and passing separate tracking arguments to GoldenSignalsMetricsRecorder, this passes the entire LibraryMetadata model and builds the telemetry setup dynamically.
1 parent ddf185f commit 78f7c6b

File tree

4 files changed

+18
-6
lines changed

4 files changed

+18
-6
lines changed

sdk-platform-java/gax-java/gax/src/main/java/com/google/api/gax/tracing/GoldenSignalsMetricsRecorder.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,12 @@ class GoldenSignalsMetricsRecorder {
5454
final DoubleHistogram clientRequestDurationRecorder;
5555

5656
GoldenSignalsMetricsRecorder(
57-
OpenTelemetry openTelemetry, String libraryName, String libraryVersion) {
57+
OpenTelemetry openTelemetry, com.google.api.gax.rpc.LibraryMetadata libraryMetadata) {
58+
String libraryName =
59+
libraryMetadata.artifactName() != null ? libraryMetadata.artifactName() : "";
5860
io.opentelemetry.api.metrics.MeterBuilder meterBuilder =
5961
openTelemetry.meterBuilder(libraryName);
62+
String libraryVersion = libraryMetadata.version();
6063
if (libraryVersion != null && !libraryVersion.isEmpty()) {
6164
meterBuilder.setInstrumentationVersion(libraryVersion);
6265
}

sdk-platform-java/gax-java/gax/src/main/java/com/google/api/gax/tracing/GoldenSignalsMetricsTracerFactory.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,9 +86,7 @@ public ApiTracerFactory withContext(ApiTracerContext context) {
8686
this.clientLevelTracerContext = context;
8787
this.metricsRecorder =
8888
new GoldenSignalsMetricsRecorder(
89-
openTelemetry,
90-
clientLevelTracerContext.libraryMetadata().artifactName(),
91-
clientLevelTracerContext.libraryMetadata().version());
89+
openTelemetry, clientLevelTracerContext.libraryMetadata());
9290
return this;
9391
}
9492
}

sdk-platform-java/gax-java/gax/src/test/java/com/google/api/gax/tracing/GoldenSignalsMetricsRecorderTest.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,13 @@ void setUp() {
6262
SdkMeterProvider.builder().registerMetricReader(metricReader).build();
6363
OpenTelemetry openTelemetry =
6464
OpenTelemetrySdk.builder().setMeterProvider(meterProvider).build();
65-
recorder = new GoldenSignalsMetricsRecorder(openTelemetry, ARTIFACT_NAME, "1.2.3");
65+
recorder =
66+
new GoldenSignalsMetricsRecorder(
67+
openTelemetry,
68+
com.google.api.gax.rpc.LibraryMetadata.newBuilder()
69+
.setArtifactName(ARTIFACT_NAME)
70+
.setVersion("1.2.3")
71+
.build());
6672
}
6773

6874
@Test

sdk-platform-java/gax-java/gax/src/test/java/com/google/api/gax/tracing/GoldenSignalsMetricsTracerTest.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,12 @@ void setUp() {
6868
ticker = new FakeTicker();
6969
tracer =
7070
new GoldenSignalsMetricsTracer(
71-
new GoldenSignalsMetricsRecorder(openTelemetry, ARTIFACT_NAME, "1.2.3"),
71+
new GoldenSignalsMetricsRecorder(
72+
openTelemetry,
73+
com.google.api.gax.rpc.LibraryMetadata.newBuilder()
74+
.setArtifactName(ARTIFACT_NAME)
75+
.setVersion("1.2.3")
76+
.build()),
7277
ApiTracerContext.empty(),
7378
ticker);
7479
}

0 commit comments

Comments
 (0)