使用VisualVM監控遠端主機上JAVA應用程式時,需要開啟遠端主機上的遠端監控通路,或者在遠端JAVA應用程式啟動時,開啟遠端監控選項,兩種方法,選擇其中一種就可以開啟遠端監控功能,配置完成後就可以在本地對遠端主機上的JAVA應用程式進行監控。
在JAVA_HOME/bin目錄中,建立名稱為jstatdAllPolicy檔案(這個檔案名稱也可以順便起,不過要與jstatd啟動時指定名稱相同),将以下内容拷貝到檔案中。并保證檔案的權限和使用者都正确。
在JAVA_HOME/bin目錄中,執行以下指令:
jstatd指令描述以及參數說明:
jstatd是一個基于RMI(Remove Method Invocation)的服務程式,它用于監控基于HotSpot的JVM中資源的建立及銷毀,并且提供了一個遠端接口允許遠端的監控工具連接配接到本地的JVM執行指令。
在需要遠端監控的JVM啟動時,開啟遠端監控選項
在本地VisualVM的應用程式視窗,右鍵單擊【遠端】》【添加遠端主機】》【主機名】中輸入遠端主機的IP位址,點選【進階設定】輸入遠端主機開啟的監控端口,點選【确定】完成配置。
如果一切正常,就可以看到遠端主機上的JAVA應用程式了。
啟動jstatd時報錯,主要原因應該是沒有配置安全管理檔案或者安全管理檔案内容錯誤,另外就是因為啟動的時候沒有指定本機IP位址或者端口。
一般情況下是使用以下指令關閉防火牆
如果使用本機JAVA安裝包的的JVisualVM來監控遠端應用程式,JDK遠端主機的版本和本地JDK版本差别較大就會出現類似問題。需要統一版本,或者下載下傳VisualVM來監控。
通過确定遠端主機的IP位址或者端口來解決。

注:轉載需注明出處及作者。