2017-07-17 108 views
0

我目前有一些我想分析的Java代碼。在閱讀了關於它的一些有希望的事情之後,我決定使用Java Mission Control。然而,迄今爲止我所諮詢的每一個資源都告訴我要首先啓動我想首先進行配置文件的過程,然後只有在Mission Control代碼已經運行時才「附加」或分析代碼(例如,來自oracle的這個視頻:https://youtu.be/WMEpRUgp9Y4?t=14m56s )。Java任務控制監聽器?

有沒有一種方法可以從頭開始分析過程?謝謝

回答

0

有一種方法可以在啓動過程時啓動分析記錄。

示例:運行分析記錄10分鐘。

java -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:StartFlightRecording=duration=10m,name=Test,filename=recording.jfr,settings=profile -jar target/highcpu-0.0.1.jar 

請參見我的文章的詳細信息:Using Java Flight Recorder

0

這不是很好的記錄,但存在這樣的可能性。 您需要使用此JVM選項

-XX:+ UnlockCommercialFeatures -XX:+ FlightRecorder -XX:FlightRecorderOptions =

前兩個是必需的,而最後一個需要與不同的參數配置,你可以找到解釋here。 理解每個參數的含義並不容易,但是通過一些試驗和錯誤,您可以很容易地找到一組好的選項。

正如參考這個人是一個最小的功能結構:

java -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,repository=/tmp,maxage=6h,settings=default MyApp