I work on OpenJDK, so I may be biased, but I’ve also found that JFR works really well with LLMs.
$ java -XX:StartFlightRecording:maxsize=10M,filename=dump.jfr -jar app.jar
$ jfr view all-views dump.jfr > report.txt
$ jfr print dump.jfr > all.txt
Then ask Codex, or whatever AI tool you use, to analyze report.txt for issues and use all.txt to dig deeper, if needed.
> but I’ve also found that JFR works really well with LLMs
There's also async profiler. LLMs just use whatever. Lots of choices.