ActiveMQ错误 javax.management.InstanceNotFoundException: org.apache.activemq:brokerName=,type=Broker

最近发现环境出现ActiveMQ经常挂,报错的内存溢出,原因差不多应该是队列里面的消费放的太多,内存设置的比较小,因为这个ActiveMQ只是辅助系统运行的,所以也没怎么在意ActiveMQ的设置相关。

目的

然后想着希望写个程序或者脚本来监控生产的消息条数,当消息条数超过一次的条数就直接清空,然后发现ActiveMQ可以启动JMX,配置JMX之后就可以连接了。

连接代码
注意点

String url = "service:jmx:rmi:///jndi/rmi://192.168.1.134:1099/jmxrmi";这里需要输入自己ActiveMQ的IP和JMX的端口。
ObjectName name = new ObjectName("org.apache.activemq:brokerName=localhost,type=Broker");这里的localhost是指当前ActiveMQ的节点名称,不是队列名称,刚开始我输入了的是队列名称,一直报错,brokerName的名字可以在activemq的配置文件里面看,也可以从activemq的控制里面找,如下图。
还有一个问题就是这里的brokerName、type首字母必须小写,
ActiveMQ 5.8.0 Release 这个版本修改了名称
在这里插入图片描述

在这里插入图片描述

public class MonitorActiveMQ {
   

    public static void main(String[] args) throws Exception {
   
        String url = "service:jmx:rmi:///jndi/rmi://192.168.1.134:1099/jmxrmi";
        JMXServiceURL urls = new JMXServiceURL(url);
        JMXConnector connector = JMXConnectorFactory.connect(urls, null)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值