Skip to content

Commit 8bccc3b

Browse files
committed
fix: inject Dev UI tracer into core engine for embedded telemetry
1 parent cc3b9ce commit 8bccc3b

1 file changed

Lines changed: 6 additions & 10 deletions

File tree

dev/src/main/java/com/google/adk/web/config/OpenTelemetryConfig.java

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -60,18 +60,14 @@ public OpenTelemetry openTelemetrySdk(SdkTracerProvider sdkTracerProvider) {
6060

6161
// Check if OpenTelemetry has already been set globally (common in tests)
6262
try {
63-
io.opentelemetry.api.GlobalOpenTelemetry.get();
64-
// If we get here, it's already set, so just return a new instance without global
65-
// registration
66-
otelLog.debug("OpenTelemetry already registered globally, creating non-global instance.");
67-
return OpenTelemetrySdk.builder().setTracerProvider(sdkTracerProvider).build();
68-
} catch (IllegalStateException e) {
69-
// GlobalOpenTelemetry hasn't been set yet, safe to register globally
7063
otelLog.debug("Registering OpenTelemetry globally.");
71-
OpenTelemetrySdk otelSdk =
64+
OpenTelemetrySdk sdk =
7265
OpenTelemetrySdk.builder().setTracerProvider(sdkTracerProvider).buildAndRegisterGlobal();
73-
Runtime.getRuntime().addShutdownHook(new Thread(otelSdk::close));
74-
return otelSdk;
66+
Runtime.getRuntime().addShutdownHook(new Thread(sdk::close));
67+
return sdk;
68+
} catch (IllegalStateException e) {
69+
otelLog.debug("OpenTelemetry already registered globally, returning non-global instance.");
70+
return OpenTelemetrySdk.builder().setTracerProvider(sdkTracerProvider).build();
7571
}
7672
}
7773
}

0 commit comments

Comments
 (0)