配置 jvisualvm 監控Java虛擬機


配置JMX遠程連接

1. 配置啟動參數

啟動jar時,添加如下配置-Dcom.sun.management.jmxremote.port=5050 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.94.23

啟動參數說明

  1. -Dcom.sun.management.jmxremote.port:配置一個遠程服務器上未被占用的端口
  2. -Dcom.sun.management.jmxremote.ssl=false:配置 JMX 是否啟用 ssl
  3. -Dcom.sun.management.jmxremote.authenticate=false:配置 JXM 是否啟動鑒權
  4. -Djava.rmi.server.hostname:配置服務器 IP

2. 配置 jvisualvm

添加遠程主機信息,填寫主機名,端口。端口就是上面啟動參數中配置的端口。
添加遠程主機

添加 JXM 連接,點擊確認。
添加 JXM 連接

添加成功后,便可以開始監控虛擬機了。

注意:JMX 不支持查看 visual GC,需要用 jstatd 來監控。

配置jstatd遠程連接

1. 創建文件 jstatd.all.policy

grant codebase "file:/usr/local/jdk1.8.0_161/lib/tools.jar" {  
   permission java.security.AllPermission;  
}; 

2. 啟動 jstatd

jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=192.168.94.23 -J-Djava.rmi.server.logCalls=true -J-Djava.net.preferIPv4Stack=true -p 5056

啟動參數說明

  1. -J-Djava.security.policy=jstatd.all.policy 指jstatd.all.policy文件的定路徑
  2. -J-Djava.rmi.server.logCalls=true:是否打印日志
  3. -J-Djava.rmi.server.hostname=192.168.19.114:配置服務器地址
  4. -p:指定端口

3. 配置 jvisualvm

選擇遠程服務器,右鍵添加 jstatd 連接,填寫端口號,端口號為上面啟動 jstatd 指定的端口。
添加 jstatd 連接

添加成功后,在服務器列表會展示出服務器上所有的 Java 虛擬機應用。根據應用名稱或者端口號選擇需要監控的服務即可開始監控。此時發現 visual GC 頁面已經可以查看了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM