The diagnostic command JFR.check allows you see status of all recordings, and if you specify verbose=true the events settings are printed.
This is an enhancement request for adding more options to check the runtime state. Today it's not possible to see which presets are available, if there's been a buffer overflow, if a disk repository is in use, where it is located etc. Information useful for performance tuning, support, JFR developers and customers who wants to verify and tune their configuration.
JFR.check.<pid> recordings= true/false, prints all available (true by default)
JFR.check.<pid> settings = true/false, prints event settings (similar to what verbose=true does today)
JFR.check.<pid> presets = true/false. prints the available presets in JRE/lib/jfr, their name and description
JFR.check.<pid> options = true/false prints options
- repository location
- max chunk size
- if dump on exit is set
- log level
- dump on exit path
- thread buffer size
- global buffer size
etc.
JFR.check <pid> statistics = true/false. print statistics
- bytes written
- bytes lost
- chunks written
- thread buffers lost;
etc.
JFR.check.<pid> global= true/false, prints the union of all settings, for all event types
the verbose flag today could still work, but it would be convenience flag for settings all the options above to true.
This is a low hanging fruit since all the information is already available, it's just a matter of printing it out. The only complication is that JFR-JNI-brdge needs to be updated so the extra parameters can be passed to Java from the JVM (which is tricky with jdk and hotspot not being in the same forest)
This is an enhancement request for adding more options to check the runtime state. Today it's not possible to see which presets are available, if there's been a buffer overflow, if a disk repository is in use, where it is located etc. Information useful for performance tuning, support, JFR developers and customers who wants to verify and tune their configuration.
JFR.check.<pid> recordings= true/false, prints all available (true by default)
JFR.check.<pid> settings = true/false, prints event settings (similar to what verbose=true does today)
JFR.check.<pid> presets = true/false. prints the available presets in JRE/lib/jfr, their name and description
JFR.check.<pid> options = true/false prints options
- repository location
- max chunk size
- if dump on exit is set
- log level
- dump on exit path
- thread buffer size
- global buffer size
etc.
JFR.check <pid> statistics = true/false. print statistics
- bytes written
- bytes lost
- chunks written
- thread buffers lost;
etc.
JFR.check.<pid> global= true/false, prints the union of all settings, for all event types
the verbose flag today could still work, but it would be convenience flag for settings all the options above to true.
This is a low hanging fruit since all the information is already available, it's just a matter of printing it out. The only complication is that JFR-JNI-brdge needs to be updated so the extra parameters can be passed to Java from the JVM (which is tricky with jdk and hotspot not being in the same forest)