JFR.dump 失败。 "No data in specified interval"



执行jcmd 115 JFR.dump name=continuous_recording时收到以下错误消息:

115:
Dump failed. No data found in the specified interval.

我使用以下配置开始录制:

XX:StartFlightRecording=disk=true,dumponexit=true,
filename=/home/site/diagnostics/recording.jfr,
maxsize=1024m,maxage=1d,name=continuous_recording

可能是缓冲区尚未填充最小块大小。但是 JFR.check 命令不提供该信息。

更新:

如果我运行 JFR.dump 而不指定记录的名称,我可以从 Java 应用程序获取转储。我尝试用引号封装录音名称(转义和未转义(,并得到与以前相同的错误。

005c736ce3ee:/home# jcmd 115 JFR.dump filename="home/6_10_dump1.jfr"
Picked up JAVA_TOOL_OPTIONS:  -Djava.net.preferIPv4Stack=true
115:
Dumped recording, 155.8 MB written to: /home/6_10_dump1.jfr

你使用的是哪个版本的JDK?块不需要填充。

JDK 11 或更高版本中,如果您指定了要在启动时转储的文件的文件名,但在转储文件时未指定它,则会出现一个错误 [1]。

尝试将此作为解决方法:

$ jcmd 115 JFR.dump filename=recording.jfr

[1] https://bugs.openjdk.java.net/browse/JDK-8220657<</p>

div class="one_answers">

Azul 的支持帮助解决了这个问题。如果在启动 VM 时未指定文件名,则执行以下操作有效:

XX:StartFlightRecording=disk=true,name=continuous_recording,dumponexit=true,maxsize=1024m,maxage=1d

此错误已归档并修复为 JDK-8220657。Azul表示,他们将在未来将其移植到祖鲁8号和11号。

相关内容

最新更新