[JMX一歩]7、JDK 5.0のJConsoleでMBeanを接続

2901 ワード

[JMX一歩]7、JDK 5.0のJConsoleでMBeanを接続
文/陈刚from www.chengang.com.cn at 2005-12-26
 
前のすべての効果はHtmlページで見ました.JDK5.0 jmxクライアントを持っています.jconsoleと呼ばれ、c:jdkbinjconsoleにあります.exe.このクライアントでMbeanサーバに接続します.
 
一、vmパラメータ方式
 
1、やはり第1篇のあのHelloAgentを使って、HelloAgentを修正して、第1句を:
MBeanServer server = MBeanServerFactory.createMBeanServer();
変更後:
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
注意:ManagementFactoryのフルパスはjavaです.lang.management.ManagementFactory
 
2、Eclipseのrunオプションを修正し、「
-Dcom.sun.management.jmxremote=HelloAgent」という文をrunオプションに追加し、次の図を変更します.
 
3、HelloAgentを実行し、Dosウィンドウに「jconsole」と入力してJConsoleに起動し、以下のインタフェースを得る. 
4、「接続」をクリックして、次のインタフェースに入ります.
 
二、RMI方式
 
やはりjconsoleを使いますが、方式が変わりました.ここでは上記のようにEclipse runのvmオプションを変更する必要はありません.
 
1、やはり第1篇のHelloAgentを使って、1段のコードをプラスして、1つのJMXConnectorServerサービスをスタートします
import javax.management.MBeanServer;
import javax.management.MBeanServerFactory;
import javax.management.ObjectName;
import javax.management.remote.JMXConnectorServer;
import javax.management.remote.JMXConnectorServerFactory;
import javax.management.remote.JMXServiceURL;
import com.sun.jdmk.comm.HtmlAdaptorServer;
public class HelloAgent {
    public static void main(String args[]) throws Exception {
        MBeanServer server = MBeanServerFactory.createMBeanServer();
        ObjectName helloName = new ObjectName("chengang:name=HelloWorld");
        Hello hello = new Hello();
        server.registerMBean(hello, helloName);
        ObjectName adapterName = new ObjectName("HelloAgent:name=htmladapter,port=8082");
        HtmlAdaptorServer adapter = new HtmlAdaptorServer();
        server.registerMBean(adapter, adapterName);
        adapter.start();
        System.out.println("start.....");
        // Create an RMI connector and start it
        JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:9999/server");
        JMXConnectorServer cs = JMXConnectorServerFactory.newJMXConnectorServer(url, null, server);
        cs.start();
        System.out.println("rmi start.....");
    }
}

  
2.Dosでコマンドを実行する:
rmiregistry 9999
 
3、HelloAgentを実行し、dosの下でコマンドjconsoleを実行し、以下のインタフェースを得て、
service:jmx:rmi:///jndi/rmi://localhost:9999/server
 
三、まとめ
MBeanServerに接続する方法は、Html、JConsoleのほかに、サードパーティのクライアントもあります.MC 4 jという有名なクライアントがあります.これらのクライアントを通じて、MBeanに簡単にアクセスできます.これは私たちがJMXを使う理由の一つです.もし私が自分で標準を作ったら、必ず自分でクライアントを開発しなければならないと思ったら、それは小さな仕事量になります.
作者の紹介
陳剛、広西桂林人、著作は《Eclipseは入門から精通まで》があって、あなたはそのブログを通じてもっと多くの情報と文章を理解することができます:http://www.chenGang.com.cn