Skip to content

Commit c935e2e

Browse files
authored
fix: shutdown built in metrics meter provider (#3518)
This PR calls Meter provider shutdown method when the client is shutdown to clean up the resources and export the remaining metrics data.
1 parent b9e6caf commit c935e2e

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

google-cloud-spanner/src/main/java/com/google/cloud/spanner/BuiltInOpenTelemetryMetricsProvider.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,9 @@ OpenTelemetry getOrCreateOpenTelemetry(String projectId, @Nullable Credentials c
6565
SdkMeterProviderBuilder sdkMeterProviderBuilder = SdkMeterProvider.builder();
6666
BuiltInOpenTelemetryMetricsView.registerBuiltinMetrics(
6767
SpannerCloudMonitoringExporter.create(projectId, credentials), sdkMeterProviderBuilder);
68-
this.openTelemetry =
69-
OpenTelemetrySdk.builder().setMeterProvider(sdkMeterProviderBuilder.build()).build();
68+
SdkMeterProvider sdkMeterProvider = sdkMeterProviderBuilder.build();
69+
this.openTelemetry = OpenTelemetrySdk.builder().setMeterProvider(sdkMeterProvider).build();
70+
Runtime.getRuntime().addShutdownHook(new Thread(sdkMeterProvider::close));
7071
}
7172
return this.openTelemetry;
7273
} catch (IOException ex) {

0 commit comments

Comments
 (0)