Module jdk.jfr
Package jdk.jfr

Class EventSettings



  • public abstract class EventSettings
    extends Object
    Convenience class for applying event settings to a recording.

    An event settings object for a recording can be obtained by calling Recording.enable(String) which can be configured using method chaining.

    Example,

     
     Recording r = new Recording();
     r.enable("com.oracle.jdk.CPULoad")
        .withPeriod(Duration.ofSeconds(1));
     r.enable("com.oracle.jdk.FileWrite")
        .withoutStackTrace()
        .withThreshold(Duration.ofNanos(10));
     r.start();
     Thread.sleep(10_000);
     r.stop();
     r.dump(Files.createTempFile("recording", ".jfr"));
    
     
     
    Since:
    9
    • Method Detail

      • withStackTrace

        public final EventSettings withStackTrace​()
        Enables stack traces for the event associated with this event setting. Equivalent to invoking with("stackTrace", "true").
        Returns:
        event settings object for further configuration, not null
      • withoutStackTrace

        public final EventSettings withoutStackTrace​()
        Disables stack traces for the event associated with this event setting. Equivalent to invoking with("stackTrace", "false")
        Returns:
        event settings object for further configuration, not null
      • withoutThreshold

        public final EventSettings withoutThreshold​()
        Convenience method for not using a threshold. Equivalent to invoking with("threshold", "0 s")
        Returns:
        event settings object for further configuration, not null
      • withPeriod

        public final EventSettings withPeriod​(Duration duration)
        Sets the period for the event associated with this event setting.
        Parameters:
        duration - the duration, not null
        Returns:
        event settings object for further configuration, not null
      • withThreshold

        public final EventSettings withThreshold​(Duration duration)
        Sets the threshold for the event associated with this event setting.
        Parameters:
        duration - the duration, or null if no duration is to be used
        Returns:
        event settings object for further configuration, not null
      • with

        public abstract EventSettings with​(String name,
                                           String value)
        Sets a setting value for the event associated with this event setting.
        Parameters:
        name - the name of the setting, for example "threshold"
        value - the value to set, for example "20 ms" not null
        Returns:
        event settings object for further configuration, not null