java飞行记录器连接错误

标签 java hadoop profiling jfr

我正在使用 Java 7 的飞行记录器转储 Hadoop 任务的执行。为此,我使用了这个配置选项:

<property>
    <name>mapred.child.java.opts</name>
    <value>-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true,dumponexitpath=/root/recordings</value>
</property>

结果是许多 .jfr 文件(正如预期的那样)。我可以毫无问题地在 Java Mission Control 中打开其中任何一个。但是,如果我尝试使用以下方法将它们连接在一起:

java oracle.jrockit.jfr.tools.ConCatRepository [directory] [-o output_filename] 

(取自:http://docs.oracle.com/cd/E15289_01/doc.40/e15070.pdf : http://docs.oracle.com/cd/E15289_01/doc.40/e15070.pdf)

我无法在 Java Mission Control 中打开结果,出现错误“从 condensed.jfr 加载事件时遇到问题。无法从 condensed.jfr 加载事件”。

我做错了什么?

最佳答案

听起来像个错误,如果 JVM 每秒发出十个(或更多)文件,则该工具可能以非时间顺序连接文件,即名为 2014_01_15_20_03_14_35880_10.jfr 的文件将在 2014_01_15_20_03_14_35880_2.jfr 之前出现,这可能会混淆 Mission Control 解析器。

您可以尝试以正确的顺序自己连接文件。

关于java飞行记录器连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21124400/

相关文章:

hadoop - 在 Ubuntu 上安装 Hadoop

c++ - 我们应该测量函数的平均执行时间还是最小执行时间?

java - 我们可以使用java中的Clip库以不同的频率播放歌曲吗

java - 在 Netbeans 中设置 JLabel 文本不起作用

hadoop - 在hadoop job jar的 "lib"文件夹下打包依赖库时,遇到ClassNotFoundException

mysql - 多列配置单元上的动态分区

java - 测量 Java 对象在内存中占用的最佳方法

haskell - 从 GHC 分析器中理解

java - play 2.0 如何定义具有多个按键的取景器

c# - 加密和解密