Skip to content

Commit 9e36ec9

Browse files
committed
fix jfr and native image
1 parent ab2439a commit 9e36ec9

File tree

4 files changed

+9
-4
lines changed

4 files changed

+9
-4
lines changed

instrumentation/runtime-telemetry/runtime-telemetry-java17/library/src/main/java/io/opentelemetry/instrumentation/runtimemetrics/java17/RuntimeMetrics.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ private JfrRuntimeMetrics(OpenTelemetry openTelemetry, Predicate<JfrFeature> fea
101101
recordingStream.onEvent(handler.getEventName(), handler);
102102
});
103103
recordingStream.onMetadata(event -> startUpLatch.countDown());
104-
Thread daemonRunner = new Thread(() -> recordingStream.start());
104+
Thread daemonRunner = new Thread(recordingStream::start, "JFR-Metrics-Runner");
105105
daemonRunner.setDaemon(true);
106106
daemonRunner.start();
107107
}
@@ -138,7 +138,8 @@ CountDownLatch getStartUpLatch() {
138138
private static boolean isJfrAvailable() {
139139
try {
140140
Class.forName("jdk.jfr.FlightRecorder");
141-
} catch (ClassNotFoundException e) {
141+
// UnsatisfiedLinkError or ClassNotFoundException
142+
} catch (Exception e) {
142143
return false;
143144
}
144145

instrumentation/runtime-telemetry/runtime-telemetry-java17/library/src/main/java/io/opentelemetry/instrumentation/runtimemetrics/java17/RuntimeMetricsBuilder.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public final class RuntimeMetricsBuilder {
2626
private boolean enableExperimentalJmxTelemetry = false;
2727
private Consumer<Runnable> shutdownHook =
2828
runnable -> {
29-
Runtime.getRuntime().addShutdownHook(new Thread(runnable));
29+
Runtime.getRuntime().addShutdownHook(new Thread(runnable, "RuntimeMetricsShutdownHook"));
3030
};
3131

3232
RuntimeMetricsBuilder(OpenTelemetry openTelemetry) {

instrumentation/runtime-telemetry/runtime-telemetry-java8/library/src/main/java/io/opentelemetry/instrumentation/runtimemetrics/java8/RuntimeMetricsBuilder.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public final class RuntimeMetricsBuilder {
2020
private boolean enableExperimentalJmxTelemetry = false;
2121
private Consumer<Runnable> shutdownHook =
2222
runnable -> {
23-
Runtime.getRuntime().addShutdownHook(new Thread(runnable));
23+
Runtime.getRuntime().addShutdownHook(new Thread(runnable, "RuntimeMetricsShutdownHook"));
2424
};
2525

2626
RuntimeMetricsBuilder(OpenTelemetry openTelemetry) {

smoke-tests-otel-starter/spring-boot-3/build.gradle.kts

+4
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,10 @@ graalvmNative {
6666
// Workaround for https://github.com/junit-team/junit5/issues/3405
6767
buildArgs.add("--initialize-at-build-time=org.junit.platform.launcher.core.LauncherConfig")
6868
buildArgs.add("--initialize-at-build-time=org.junit.jupiter.engine.config.InstantiatingConfigurationParameterConverter")
69+
70+
// enable JFR - see https://www.graalvm.org/22.0/reference-manual/native-image/JFR/
71+
buildArgs.add("-H:+AllowVMInspection")
72+
jvmArgs("-XX:+FlightRecorder")
6973
}
7074

7175
// See https://github.com/graalvm/native-build-tools/issues/572

0 commit comments

Comments
 (0)