簡體   English   中英

visualvm中的堆轉儲瀏覽器?

[英]Heap dump browser in visualvm?

我正在運行Tomcat 7的遠程服務器上使用VisualVM監視應用程序。當我嘗試打開堆轉儲瀏覽器時,得到的只是一個窗口,提示我輸入要保存的轉儲文件的路徑,但沒有瀏覽器窗口。

我正在使用以下變量啟動tomcat

export JAVA_OPTS="-Dcom.sun.management.jmxremote=true \\ -Dcom.sun.management.jmxremote.port=9090 \\ -Dcom.sun.management.jmxremote.ssl=false \\ -Dcom.sun.management.jmxremote.authenticate=false \\ -Djava.rmi.server.hostname=host ip"

連接到遠程應用程序時,是否可以打開堆轉儲瀏覽器窗口?

不幸的是,沒有直接的方法可以做到這一點。 您可以使用jVisualVM監視遠程Java進程,但無法進行堆轉儲。 如果考慮一下,這是有道理的,因為堆轉儲文件(.hprof)的大小通常為MB或GB,具體取決於正在運行的Java進程,並且實時捕獲和傳輸所有這些數據並不容易。

如果您可以訪問該遠程服務器上正在運行的程序,請登錄並使用jmap通過這樣指定java ProcessID進行堆轉儲,

jmap -dump:file=absolute-path-of-dumpfile ProcessID

然后將轉儲復制到本地以進行分析。

有關更多信息,您可以參考此SO 鏈接

您實際上可以使用JProfiler做到這一點,但這是一個許可工具。 我相信試用版不包含遠程JVM的功能。 谷歌一下。

其實你可以從遠程應用程序堆轉儲,但你不能馬上瀏覽它。 該對話框要求您提供將為您保存堆轉儲文件的遠程系統上的路徑。 要在VisualVM中打開它,您必須手動將文件傳輸到本地計算機並使用File | File。 在VisualVM中加載。

暫無
暫無

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

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