spring4 集成JMX监控

单机监控

在javaconfig类中开启注解

@EnableMBeanExport

或者 在传统的xml中添加

export server="mbeanServer" />

来看看如何使用注解吧

@ManagedResource 将MBeanController导出为MBean

@ManagedAttribute 将bean的方法暴露为MBean托管操作

@ManagedOperation 将bean的属性暴露为MBean托管属性

@Controller
@ManagedResource(objectName="spittr:name=MBeanController")
public class MBeanController {
    private static int i= 100;
    @ManagedAttribute
    public int getI() {
        return i;
    }
    @ManagedAttribute
    public void setI(int i) {
        this.i = i;
    }
}

这样就可以在 jconsole 中监控了!
spring4 集成JMX监控_第1张图片

看看如何暴露远程MBean

/**    
     * 启动RMI注册表
     * @author dong.tl 
     * @date 2017年5月18日 下午3:58:22  
     * @return 
     */  
    @Bean
    public RmiRegistryFactoryBean rmiRegistryFB(){
        RmiRegistryFactoryBean rmiRegistryFB = new RmiRegistryFactoryBean();
        rmiRegistryFB.setPort(1099);
        return rmiRegistryFB;

    }

    /**    
     * 启动远程 JMX
     * @author dong.tl 
     * @date 2017年5月18日 下午3:58:39  
     * @return 
     */  
    @Bean
    public ConnectorServerFactoryBean connectorServerFactoryBean(){
        ConnectorServerFactoryBean csfb = new ConnectorServerFactoryBean();
        csfb.setServiceUrl("service:jmx:rmi://localhost/jndi/rmi://localhost:1099/spittr");
        return csfb;
    }

你可能感兴趣的:(Spring)