About JFR, how can I get the detailed info of the objects in memory view?

72 views Asked by At

This is a screenshot of JProfiler. You see, I can only know byte[] has the most biggest size (235MB). However, it's not detailed. I don't know where the array is and the related variable name in my program.

enter image description here

I've tried adding some JVM args. But none of them effected.

Below is the JVM args.

  '-XX:+FlightRecorder' \
  '-XX:StartFlightRecording=duration=180s,settings=/opt/amazon/brazil-config/app/my_jfr_config.jfc,filename=myrecording.jfr' \

my_jfr_config.jfc

<?xml version="1.0" encoding="UTF-8"?>
<configuration version="2.0" label="Continuous" description="Low overhead configuration safe for continuous use in production environments, typically less than 1 % overhead." provider="Oracle">
    <event name="jdk.ObjectCount">
      <setting name="enabled" control="memory-profiling-enabled-all">true</setting>
      <setting name="enabled" control="heap-statistics-enabled">true</setting>
      <setting name="period">everyChunk</setting>
    </event>
</configuration>

And the JDK version is openjdk 11.0.20 2023-07-18 LTS.

0

There are 0 answers