Java 如何打开jfr部分文件

Java 如何打开jfr部分文件,java,jfr,Java,Jfr,当我在应用程序中使用下面这样的配置时,它总是会得到一些xxx.jfr.part文件。 如何在Java Flight Recorder工具中打开XXX.jfr.part文件? 如何更改配置以创建较少的.part文件 我的应用程序中的配置: -XX:+FlightRecorder-XX:FlightRecorderOptions=defaultrecording=true,disk=true,maxsize=200m,maxage=3h,repository=/${MyApplicationPath

当我在应用程序中使用下面这样的配置时,它总是会得到一些xxx.jfr.part文件。 如何在Java Flight Recorder工具中打开XXX.jfr.part文件? 如何更改配置以创建较少的.part文件

我的应用程序中的配置:
-XX:+FlightRecorder
-XX:FlightRecorderOptions=defaultrecording=true,disk=true,maxsize=200m,maxage=3h,repository=/${MyApplicationPath}/log/jfr

无法打开的部分文件:
|MyApplicationPath
__|日志
____|jfr
_______|2018年11月14日05月33日06月17296日
___________|2018_11_14_05_33_07_17296_0.jfr.第2727kb部分

___________|2018_11_14_05_33_07_17296_0.jfr 0KB

该.part文件表示未完成的文件。建议使用jcmd工具从磁盘存储库中提取数据

Oracle JDK 7/8(您似乎正在使用)

jcmd JFR.dump录制=0文件名=dump.JFR

它将完成.part文件并以安全的方式复制数据。无法读取.part文件,因为有关如何解析该文件的重要信息位于末尾。

我们是否有办法将配置添加到JVM参数中,以自动生成jfr文件或命令,将缓冲区刷新到jfr文件?-XX:StartFlightrecording=dumponexit=true,filename=dump.jfr将在JVM退出时写入记录。还可以指定一个持续时间,例如-XX:StartFlightrecording=duration=30s,filename=dump.jfr,以在30秒后转储录制
jcmd <pid> JFR.dump recording=0 filename=dump.jfr