您好,登錄后才能下訂單哦!
這篇文章主要介紹了Jvisualvm監控遠程SpringBoot項目的方法的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Jvisualvm監控遠程SpringBoot項目的方法文章都會有所收獲,下面我們一起來看看吧。
注意:VisualVM連接遠程服務器有兩種方式:JMX和jstatd,兩種方式都不能完美支持所有功能,
例如JMX不支持VisualGC,
jstatd不支持CPU監控,
實際使用可同時配置上并按需選用。
jvisualvm程序添加遠程連接,請關閉本機防火墻。
正常的springboot啟動命令為
nohup java -jar demo.jar &
使用監控后:
nohup java -Djava.rmi.server.hostname=192.168.81.149 \ -Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.port=1099 \ -Dcom.sun.management.jmxremote.authenticate=false \ -Dcom.sun.management.jmxremote.ssl=false \ -jar jvm-1.0-SNAPSHOT.jar &
java -Djava.rmi.server.hostname=192.168.81.149 \ -Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.port=1099 \ -Dcom.sun.management.jmxremote.authenticate=false \ -Dcom.sun.management.jmxremote.ssl=false \ -jar jvm-1.0-SNAPSHOT.jar
jvm-1.0-SNAPSHOT.jar 是項目的 jar包
192.168.81.149 是項目部署的機器ip
1099是jvisualvm需要連接的遠程端口號
authenticate=false 不啟用,用戶認證
打開后又可能啥都沒有,空蕩蕩的,這是因為項目需要有人訪問下,隨便都行
這種方式需要你手動安裝JDK才行, 或者你知道jdk在哪里
在jdk目錄下的bin創建
vi jstatd.all.policy
我這邊指定了絕對路徑,方便排除路徑方面的影響
grant codebase "file:${java.home}/../lib/tools.jar" { permission java.security.AllPermission; };
啟動jstatd后臺應用 端口(默認為1099) 使用參數-p可指定其它端口
jstatd -J-Djava.security.policy=jstatd.all.policy \ -J-Djava.rmi.server.hostname=192.168.81.149 \ -J-Djava.rmi.server.logCalls=true -p 1098
(我是在/usr/local/jdk1.8.0_161/bin路徑下運行的下面的命令,該路徑下就有jstatd.all.policy文件。如果是在其他地方執行,記得指定絕對或相對路徑)
其中,
-J-Djava.security.policy=jstatd.all.policy 指定路徑 -J-Djava.rmi.server.logCalls=true 打印日志 -J-Djava.rmi.server.hostname=192.168.81.149 指定主機名,主機名應該和你用hostname -i命令執行出來的結果一致。
啟動項目
java -jar jvm-1.0-SNAPSHOT.jar
這個1,098 其實是我們輸入的時候,1098自動轉換的
關于“Jvisualvm監控遠程SpringBoot項目的方法”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“Jvisualvm監控遠程SpringBoot項目的方法”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。