From 9e7edab6e48574830f8f9f442bd34376b2beee2c Mon Sep 17 00:00:00 2001 From: Trask Stalnaker Date: Sat, 15 Feb 2025 14:53:49 -0800 Subject: [PATCH] Fix OpenJ9 test failure (#13311) --- .../spring/smoketest/OtelSpringStarterSmokeTest.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/smoke-tests-otel-starter/spring-boot-3/src/test/java/io/opentelemetry/spring/smoketest/OtelSpringStarterSmokeTest.java b/smoke-tests-otel-starter/spring-boot-3/src/test/java/io/opentelemetry/spring/smoketest/OtelSpringStarterSmokeTest.java index 89a0a07c1b..9fe9916312 100644 --- a/smoke-tests-otel-starter/spring-boot-3/src/test/java/io/opentelemetry/spring/smoketest/OtelSpringStarterSmokeTest.java +++ b/smoke-tests-otel-starter/spring-boot-3/src/test/java/io/opentelemetry/spring/smoketest/OtelSpringStarterSmokeTest.java @@ -26,8 +26,7 @@ class OtelSpringStarterSmokeTest extends AbstractOtelSpringStarterSmokeTest { @Override protected void assertAdditionalMetrics() { - if (System.getProperty("org.graalvm.nativeimage.imagecode") != null) { - // GraalVM native image does not support JFR + if (!isFlightRecorderAvailable()) { return; } @@ -50,4 +49,13 @@ class OtelSpringStarterSmokeTest extends AbstractOtelSpringStarterSmokeTest { "io.opentelemetry.runtime-telemetry-java17", metric, AbstractIterableAssert::isNotEmpty); } } + + private static boolean isFlightRecorderAvailable() { + try { + return (boolean) + Class.forName("jdk.jfr.FlightRecorder").getMethod("isAvailable").invoke(null); + } catch (ReflectiveOperationException exception) { + return false; + } + } }