diff --git a/src/jdk.jfr/share/classes/jdk/jfr/events/EventConfigurations.java b/src/jdk.jfr/share/classes/jdk/jfr/events/EventConfigurations.java index bc4483646f1..3ad5d6760be 100644 --- a/src/jdk.jfr/share/classes/jdk/jfr/events/EventConfigurations.java +++ b/src/jdk.jfr/share/classes/jdk/jfr/events/EventConfigurations.java @@ -35,4 +35,10 @@ public final class EventConfigurations { public static final EventConfiguration FILE_FORCE = Utils.getConfiguration(FileForceEvent.class); public static final EventConfiguration ERROR_THROWN = Utils.getConfiguration(ErrorThrownEvent.class); public static final EventConfiguration EXCEPTION_THROWN = Utils.getConfiguration(ExceptionThrownEvent.class); + + public static void initialize() { + // This method is intentionally empty. It is used to initialize the + // event configurations, i.e. ensure that this class's static + // initializer is run. + } } diff --git a/src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecorder.java b/src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecorder.java index cf10a83ba64..6ec2f2731f9 100644 --- a/src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecorder.java +++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecorder.java @@ -54,6 +54,7 @@ import jdk.jfr.RecordingState; import jdk.jfr.events.ActiveRecordingEvent; import jdk.jfr.events.ActiveSettingEvent; +import jdk.jfr.events.EventConfigurations; import jdk.jfr.internal.SecuritySupport.SafePath; import jdk.jfr.internal.SecuritySupport.SecureRecorderListener; import jdk.jfr.internal.consumer.EventLog; @@ -83,6 +84,7 @@ public PlatformRecorder() throws Exception { Logger.log(JFR_SYSTEM, INFO, "Created native"); JDKEvents.initialize(); Logger.log(JFR_SYSTEM, INFO, "Registered JDK events"); + EventConfigurations.initialize(); JDKEvents.addInstrumentation(); startDiskMonitor(); shutdownHook = SecuritySupport.createThreadWitNoPermissions("JFR Shutdown Hook", new ShutdownHook(this));