Java Flight Recorder
Java Flight Recorder (JFR) is a monitoring tool that collects information about the Java Virtual Machine (JVM) when Hyperledger Besu is running. Use the JFR as a tool to analyze Besu performance.
Enabling Java Flight Recorder
To enable JFR, set
BESU_OPTS to the JFR tags as follows:
export BESU_OPTS=-XX:StartFlightRecording=disk=true,delay=15s,dumponexit=true,\ filename=/tmp/recording.jfr,maxsize=1024m,maxage=1d,\ settings=profile,path-to-gc-roots=true
When recording, cleanly exiting Besu results in better data. If not possible to cleanly exit, the file may be missing some information not flushed to disk.
Inspect the file written to
/tmp/recording.jfr with tools such as
If providing the output file to ConsenSys Quorum support, be aware that while JFR files don’t contain secrets such as private keys, some details about the user configuration can be inferred from the JFR output.