1. 監控本地Java進程
對於本地的Java進程很簡單,只需要在啟動需要監控的Java程序后,啟動Jconsole,在本地進程列表中選擇該進程點擊“連接”按鈕即可。例如,我們先啟動JDK自帶的另一個監控工具JVisualVM,然后啟動JConsole:
在JConsole的本地進程列表中可以看到JVisualVM進程,選擇並連接之。
2. 監控遠程Java進程
2.1 設置遠程監控相關選項
對於遠程Java進程的連接,會要麻煩些,首先需要在需監控的遠程Java程序啟動腳本中加入與JVM遠程監控相關的選項:
1) 開啟JVM遠程監控
-Dcom.sun.management.jmxremote=true
2) 監控的IP地址
-Djava.rmi.server.hostname=192.168.91.166,遠程進程所在主機的IP。
3) 監控的端口
-Dcom.sun.management.jmxremote.port=50013,這個端口值可以任意設置,但在之后用Jconsole連接這個遠程進程的時候,遠程進程中的port一定要和此處的設置一致,並且一定不要和遠程進程的服務端口區分開。
4) 是否禁用ssl驗證
-Dcom.sun.management.jmxremote.ssl,false為禁用,true為啟用。
5) 是否需要用戶密碼驗證
-Dcom.sun.management.jmxremote.authenticate,false為不需要驗證,true為需要驗證。但我在Win7(32位、64位)中tomcat5.5.23下試着將該選項設置為true,tomcat無法啟動,命令行窗口一閃而過。
有試過象參考文獻中所說的,修改jdk\jre及jre下的jmxremote.password和jmxremote.access,又有嘗試象參考文獻4中所說的,修改jdk\jre及jre下結果也是一樣的。結果也是一樣的management.properties,結果均一樣的。
有哪位遇到過,並解決了這個問題,如果看到這兒的,希望可以幫忙解答一下,先謝過了!!
2.2 連接遠程Java進程
有兩種連接遠程Java進程的方法,效果是一樣的。
1) 命令行中連接遠程Java 進程
直接在命令行中啟動JConsole的時候,帶遠程進程參數:

2) JConsole圖形界面上連接遠程Java進程
先在命令行中不帶遠程進程參數啟動JConsole,然后在JConsole新建連接對話框中選擇遠程進程,填入遠程進程參數:,最后點擊“連接”按鈕。
參考文獻
1. http://space.itpub.net/23071790/viewspace-701205
2. http://docs.oracle.com/javase/1.5.0/docs/guide/management/jconsole.html