JMX初体验

想要给自己的项目加上监控的功能,JMX是个不错的选择,主要是简单通用

 

首先建立个接口,命名规范为:Java 类名 + "MBean"后缀

然后,生成Java 类,实现上述接口,即MBean类

然后,创建MBeanServer,即JMX agent,接收客户端调用

然后,实例化MBean,生成ObjectName,在MBeanServer中注册MBean

为了通过浏览器访问,加入HtmlAdaptor,在MBeanServer中注册HtmlAdaptorServer

示例代码如下:

public interface HelloMBean {
    String sayHello();
}

public class Hello implements HelloMBean {
    @Override
    public String sayHello(){
        return Charset.defaultCharset().name();
    }
}

 

// MBeanServer mbs = MBeanServerFactory.createMBeanServer();//不能在jconsole中使用
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();//可在jconsole中使用
//创建MBean
HelloMBean mb = new Hello();
//将MBean注册到MBeanServer中
mbs.registerMBean(mb, new ObjectName("MyappMBean:name=controller"));

//创建适配器,用于能够通过浏览器访问MBean
HtmlAdaptorServer adapter = new HtmlAdaptorServer();
adapter.setPort(9797);
mbs.registerMBean(adapter, new ObjectName("MyappMBean:name=htmladapter,port=9797"));
adapter.start();

浏览器中打开http://127.0.0.1:9797/,可以看到

 

点开“name=controller”看到MBean详情

点击下面的"sayHello"按钮打开,返回操作结果

 

posted @ 2016-01-05 17:07  未来的那啥  阅读(518)  评论(0编辑  收藏  举报