本文介紹了無法在VisualVM工具中顯示jstad監(jiān)控的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!
問題描述
我讓EC2實(shí)例托管Tomcat應(yīng)用程序。其中安裝了JVM。
我正嘗試從我的工作站監(jiān)視VisualGC。
在所有這些應(yīng)用程序?qū)嵗校覀兡軌蛟诳梢昖M工具中建立JMX連接,但對于插件-可視GC,它顯示此JVM不支持的所有實(shí)例
我們可以通過添加JMX連接來連接到該實(shí)例
當(dāng)我嘗試添加jstatd連接時,顯示&不支持此JVM";。
我還創(chuàng)建了一個策略文件,正如互聯(lián)網(wǎng)上其他解決方案所建議的-‘jstatd.all.policy’,并嘗試啟動jstatd,如下所示。
使用的命令-
./jstatd -J-Djava.security.policy=jstatd.all.policy
我確保當(dāng)時jstatd正在實(shí)例中運(yùn)行,我們可以在命令行中獲取實(shí)例中的統(tǒng)計信息,但不知何故無法在工具中顯示這些統(tǒng)計信息,實(shí)例和可視化VM工具的可視化GC插件沒有相互連接。有趣的是,我們還可以看到其他監(jiān)控圖表。
我無法查看它的原因是什么?
我也已經(jīng)嘗試過此命令,就是這樣-sudo ./jstatd -J-Djava.security.policy=/tmp/jstatd.all.policy -J-Djava.rmi.server.hostname=<host ip> -J-Djava.rmi.server.logCalls=true &
但這并沒有解決問題
推薦答案
希望您的安全策略文件(工具.策略)缺少對工具.jar的權(quán)限
grant codebase "file:/usr/lib/jvm/java-8-openjdk-amd64/lib/tools.jar" {
permission java.security.AllPermission;
};
添加上述權(quán)限后,運(yùn)行jstatd
sudo jstatd -J-Djava.security.policy=/tmp/tools.policy -J-Djava.rmi.server.hostname=10.101.32.110 -p 7198
根據(jù)您的環(huán)境替換JDK文件夾、主機(jī)名和端口。
這篇關(guān)于無法在VisualVM工具中顯示jstad監(jiān)控的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,