Skip to content
This repository was archived by the owner on May 8, 2026. It is now read-only.

Commit 45016cd

Browse files
wip
Change-Id: If6dd6db3cdc3624ff0a4397fad30fa6a47e935b0
1 parent 0fb4e3c commit 45016cd

4 files changed

Lines changed: 66 additions & 56 deletions

File tree

google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/BuiltinMetricsTracerFactory.java

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,17 @@
1616
package com.google.cloud.bigtable.data.v2.stub.metrics;
1717

1818
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.APPLICATION_BLOCKING_LATENCIES_NAME;
19+
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.APP_PROFILE_KEY;
1920
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.ATTEMPT_LATENCIES2_NAME;
2021
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.ATTEMPT_LATENCIES_NAME;
2122
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.BATCH_WRITE_FLOW_CONTROL_FACTOR_NAME;
2223
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.BATCH_WRITE_FLOW_CONTROL_TARGET_QPS_NAME;
24+
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.BIGTABLE_PROJECT_ID_KEY;
2325
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.CLIENT_BLOCKING_LATENCIES_NAME;
26+
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.CLIENT_NAME_KEY;
2427
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.CONNECTIVITY_ERROR_COUNT_NAME;
2528
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.FIRST_RESPONSE_LATENCIES_NAME;
29+
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.INSTANCE_ID_KEY;
2630
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.METER_NAME;
2731
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.OPERATION_LATENCIES_NAME;
2832
import static com.google.cloud.bigtable.data.v2.stub.metrics.BuiltinMetricsConstants.REMAINING_DEADLINE_NAME;
@@ -34,6 +38,8 @@
3438
import com.google.api.gax.tracing.ApiTracerFactory;
3539
import com.google.api.gax.tracing.BaseApiTracerFactory;
3640
import com.google.api.gax.tracing.SpanName;
41+
import com.google.cloud.bigtable.Version;
42+
import com.google.cloud.bigtable.data.v2.internal.csm.attributes.ClientInfo;
3743
import io.opentelemetry.api.OpenTelemetry;
3844
import io.opentelemetry.api.common.Attributes;
3945
import io.opentelemetry.api.metrics.DoubleGauge;
@@ -68,14 +74,24 @@ public class BuiltinMetricsTracerFactory extends BaseApiTracerFactory {
6874
private final DoubleHistogram batchWriteFlowControlFactorHistogram;
6975

7076
public static BuiltinMetricsTracerFactory create(
71-
OpenTelemetry openTelemetry, Attributes attributes) throws IOException {
72-
return new BuiltinMetricsTracerFactory(openTelemetry, attributes);
77+
OpenTelemetry openTelemetry, ClientInfo clientInfo) throws IOException {
78+
return new BuiltinMetricsTracerFactory(openTelemetry, clientInfo);
7379
}
7480

75-
BuiltinMetricsTracerFactory(OpenTelemetry openTelemetry, Attributes attributes) {
76-
this.attributes = attributes;
81+
BuiltinMetricsTracerFactory(OpenTelemetry openTelemetry, ClientInfo clientInfo) {
7782
Meter meter = openTelemetry.getMeter(METER_NAME);
7883

84+
this.attributes =
85+
Attributes.of(
86+
BIGTABLE_PROJECT_ID_KEY,
87+
clientInfo.getInstanceName().getProject(),
88+
INSTANCE_ID_KEY,
89+
clientInfo.getInstanceName().getInstance(),
90+
APP_PROFILE_KEY,
91+
clientInfo.getAppProfileId(),
92+
CLIENT_NAME_KEY,
93+
"bigtable-java/" + Version.VERSION);
94+
7995
operationLatenciesHistogram =
8096
meter
8197
.histogramBuilder(OPERATION_LATENCIES_NAME)

google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/MetricsTracerFactory.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import com.google.api.gax.tracing.ApiTracerFactory;
2121
import com.google.api.gax.tracing.BaseApiTracerFactory;
2222
import com.google.api.gax.tracing.SpanName;
23+
import com.google.cloud.bigtable.data.v2.internal.csm.attributes.ClientInfo;
2324
import com.google.common.collect.ImmutableMap;
2425
import io.opencensus.stats.StatsRecorder;
2526
import io.opencensus.tags.TagKey;

google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/metrics/Util.java

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -280,17 +280,7 @@ public static ApiTracerFactory createOCMetricsFactory(
280280
}
281281

282282
public static BuiltinMetricsTracerFactory createOtelMetricsFactory(
283-
OpenTelemetry otel, ClientInfo clientInfo) throws IOException {
284-
Attributes attributes =
285-
Attributes.of(
286-
BIGTABLE_PROJECT_ID_KEY,
287-
clientInfo.getInstanceName().getProject(),
288-
INSTANCE_ID_KEY,
289-
clientInfo.getInstanceName().getInstance(),
290-
APP_PROFILE_KEY,
291-
clientInfo.getAppProfileId(),
292-
CLIENT_NAME_KEY,
293-
"bigtable-java/" + Version.VERSION);
294-
return BuiltinMetricsTracerFactory.create(otel, attributes);
283+
OpenTelemetry otel, ClientInfo clientInfo) {
284+
return new BuiltinMetricsTracerFactory(otel, clientInfo);
295285
}
296286
}

0 commit comments

Comments
 (0)