java -XX:+UnlockDiagnosticVMOptions \
-XX:+DebugNonSafepoints \
-XX:+FlightRecorder \
-XX:StartFlightRecording=delay=10s,duration=10m,name=Profiling,filename=recording.jfr,settings=profile \
-XX:FlightRecorderOptions=loglevel=info \
-jar ...
jcmd <pid> JFR.start settings=profile delay=10s duration=10m name=Profiling filename=recording.jfr
java -XX:+UnlockDiagnosticVMOptions \
-XX:+DebugNonSafepoints \
-XX:+FlightRecorder \
-XX:FlightRecorderOptions=defaultrecording=true,disk=true,repository=/tmp,maxage=2h,loglevel=info \
-jar ...
jcmd <pid> JFR.start
jcmd <pid> JFR.dump
java -XX:+UnlockDiagnosticVMOptions \
-XX:+DebugNonSafepoints \
-XX:+FlightRecorder \
-XX:FlightRecorderOptions=defaultrecording=true,disk=true,repository=/tmp,maxage=2h,dumponexit=true,dumponexitpath=dumponexit.jfr,loglevel=info \
-jar ...