簡體   English   中英

java飛行記錄器連接錯誤

[英]java flight recorder concatenation error

我正在使用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.pdfhttp//docs.oracle.com/cd/E15289_01/doc.40/e15070.pdf

我無法在Java Mission Control中打開結果,並顯示錯誤“從condensed.jfr加載事件遇到了問題。無法加載來自condensed.jfr的事件”。

我究竟做錯了什么?

聽起來像一個bug,如果JVM每秒發出十個(或更多)文件,那么該工具可能會按非時間順序連接文件,即一個名為2014_01_15_20_03_14_35880_10.jfr的文件會在2014_01_15_20_03_14_35880_2.jfr之前出現,這可能會讓人感到困惑任務控制解析器。

您可以嘗試以正確的順序自己連接文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM