我正在用filghtrecorder测试我的Java代码,所有其他数据均显示正常(它们显示了某物),但是“内存->对象统计信息”为空。
使用JDK 1.8.0_161
这是我使用的参数。
java -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:StartFlightRecording=dumponexit=true,filename=4.jfr,settings=default -jar myapp.jar
我尝试将设置更改为“ settings = profile”,但没有帮助。 (我不知道不同)
我想知道为什么默认情况下不启用它,或者启用它但没有一个值得记录的对象吗?
答案 0 :(得分:1)
正如您可能在JMC UI中看到的那样,该页面所需的是“对象计数”事件。 进行自己的设置版本,例如,通过复制JDK / jre / lib / jfr / profile.jfc文件,然后在本节中将enabled更改为true。
<setting name="enabled" control="heap-statistics-enabled">false</setting>
<setting name="period">everyChunk</setting>
</event>
您还可以使用JMC UI创建新的设置文件,单击“开始飞行记录”向导中的“模板管理器”按钮。
将新文件保存在JDK / jre / lib / jfr /中,然后可以仅在命令行中使用settings=mynewsettings
,或将其保存在其他位置并使用settings=<fullpathtomynewsettingsfile>
。