javajvmjava-17jfrjava-mission-control

Java Flight Recorder - Logging parameters on JDK17


My jfr log does not contain any information about Memory / TLAB Allocation section , if analyze it by MissionControl

JVM parameters (JDK17):

-XX:+UnlockDiagnosticVMOptions -X::+DebugNonSafepoints -XX:UnlockCommercialFeatures -XX:+FlightRecorder -XX:StartFlightRecording=delay....filename=... loglevel=info

P.S. FlightRecorderOptions decom'ed and not available in LTS JDK17

JVM parameters (JDK8):

-XX:+UnlockDiagnosticVMOptions -X::+DebugNonSafepoints -XX:UnlockCommercialFeatures -XX:+FlightRecorder -XX:StartFlightRecording=delay....filename=... -XX:FlightRecorderOptions=loglevel=info

On JDK8 I have all data in place, I'm a bit puzzled what if my issue about missing 'Memory/TLAB Allocation' is caused by incorrect JVM parameters for JFR ?

--Update--

https://bugs.openjdk.org/browse/JDK-8225312 Deprecate -XX:FlightRecorder


Solution

  • The TLAB events were disabled in settings=profile when the Object Allocation Sample event was introduced in JDK 16 (as it has less overhead and is enabled by default)

    You can enable TLAB events manually:

    java -XX:StartFlightRecording:
             jdk.ObjectAllocationInNewTLAB#enabled=true,
             jdk.ObjectAllocationOutsideTLAB#enabled=true,filename=...