File tree Expand file tree Collapse file tree
google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub Expand file tree Collapse file tree Original file line number Diff line number Diff line change 4646import com .google .cloud .bigtable .data .v2 .models .RowMutation ;
4747import com .google .cloud .bigtable .data .v2 .stub .metrics .DefaultMetricsProvider ;
4848import com .google .cloud .bigtable .data .v2 .stub .metrics .MetricsProvider ;
49- import com .google .cloud .bigtable .data .v2 .stub .metrics .NoopMetricsProvider ;
5049import com .google .cloud .bigtable .data .v2 .stub .mutaterows .MutateRowsBatchingDescriptor ;
5150import com .google .cloud .bigtable .data .v2 .stub .readrows .ReadRowsBatchingDescriptor ;
5251import com .google .common .base .MoreObjects ;
@@ -1068,8 +1067,11 @@ public EnhancedBigtableStubSettings build() {
10681067
10691068 featureFlags .setRoutingCookie (this .getEnableRoutingCookie ());
10701069 featureFlags .setRetryInfo (this .getEnableRetryInfo ());
1070+ // client_Side_metrics_enabled feature flag is only set when a user is running with a
1071+ // DefaultMetricsProvider. This may cause false negatives when a user registered the
1072+ // metrics on their CustomOpenTelemetryMetricsProvider.
10711073 featureFlags .setClientSideMetricsEnabled (
1072- !( this .getMetricsProvider () instanceof NoopMetricsProvider ) );
1074+ this .getMetricsProvider () instanceof DefaultMetricsProvider );
10731075
10741076 // Serialize the web64 encode the bigtable feature flags
10751077 ByteArrayOutputStream boas = new ByteArrayOutputStream ();
Original file line number Diff line number Diff line change 2424import io .opentelemetry .sdk .metrics .export .PeriodicMetricReader ;
2525import java .io .IOException ;
2626import java .util .Map ;
27+ import java .util .concurrent .atomic .AtomicBoolean ;
2728import javax .annotation .Nullable ;
2829
2930/**
3334 */
3435public class BuiltinMetricsView {
3536
37+ private static final AtomicBoolean BUILTIN_VIEW_REGISTERED = new AtomicBoolean ();
38+
3639 private BuiltinMetricsView () {}
3740
3841 /**
@@ -50,6 +53,7 @@ public static void registerBuiltinMetrics(
5053 String projectId , @ Nullable Credentials credentials , SdkMeterProviderBuilder builder )
5154 throws IOException {
5255 MetricExporter metricExporter = BigtableCloudMonitoringExporter .create (projectId , credentials );
56+ BUILTIN_VIEW_REGISTERED .set (true );
5357 for (Map .Entry <InstrumentSelector , View > entry :
5458 BuiltinMetricsConstants .getAllViews ().entrySet ()) {
5559 builder .registerView (entry .getKey (), entry .getValue ());
You can’t perform that action at this time.
0 commit comments