jdk8 开启 JFR 收集

开启JFR

由于JFR是商用的,所以需要解锁Java程序的商业feature

-XX:+UnlockCommercialFeatures -XX:+FlightRecorder

注,JDK 1.8u40之前版本,需再jvm启动前添加参数。JDK 1.8u40之后版本,不需要在启动的时候通过flag来解锁了,可以动态的解锁

商业特权

检查状态

jcmd 17206 VM.check_commercial_features

动态解锁 后可以运行许JFR采集任务

jcmd 17206 VM.unlock_commercial_features

收集JFR信息

假设进程id为25550

采集固定时长JFR任务

'''
jcmd 25550 JFR.start name=test settings=profile delay=5s duration=90m filename="output.jfr" compress=true
'''

控制JFR任务的开启关闭

开启JFR任务
'''
jcmd 25550 JFR.start name=test settings=profile delay=5s duration=0 compress=true
'''
dump文件

jcmd 25550 JFR.dump name=test filename="output.jfr" compress=true

关闭JFR任务

jcmd 25550 JFR.stop name=test 

检查状态

jcmd 25550 JFR.check

你可能感兴趣的:(jdk8 开启 JFR 收集)