打开JMX

<broker … useJmx="true">

  <managementContext>

<managementContext createConnector="true"/>

</managementContext>

</broker>

启动ActiveMQ

$ activemq start

启动 JMX console

$ jconsole

选择远程进程,输入url:

service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi

访问ActiveMQ Jolokia REST API

read Reading of MBean attributes
write Setting of MBean attributes
exec Execution of JMX operations
list List the available MBeans along with their supported attributes and operations.
search Searching for MBeans
version Getting version and server information

每种命令的url格式。

<base-url>/read/<mbean name>/<attribute name>/<inner path>

<base url>/write/<mbean name>/<attribute name>/<value>/<inner path>

<base url>/exec/<mbean name>/<operation name>/<arg1>/<arg2>/....

<base-url>/search/<pattern>

<base-url>/list/<inner path>

<base-url>/version

例子:

拿到broker的属性值

http://localhost:8161/api/jolokia/read/org.apache.activemq:brokerName=localhost,type=Broker

{

"timestamp": 1463105087,

"status": 200,

"request": {

"mbean": "org.apache.activemq:brokerName=localhost,type=Broker",

"type": "read"

},

"value": {

"BrokerId": "ID:NOTE140082-51092-1463022383093-0:1",

"TemporaryQueues": [],

"StompSslURL": "",

"TemporaryTopicProducers": [],

"StoreLimit": 107374182400,

"TotalConsumerCount": 0,

"DurableTopicSubscribers": [],

"Slave": false,

"StompURL": "stomp:\/\/NOTE140082:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600",

"TopicSubscribers": [],

"QueueProducers": [],

"VMURL": "vm:\/\/localhost",

"Uptime": "22 hours 58 minutes",

"TotalMessageCount": 0,

"Topics": [

{

"objectName": "org.apache.activemq:brokerName=localhost,destinationName=ActiveMQ.Advisory.MasterBroker,destinationType=Topic,type=Broker"

},

{

"objectName": "org.apache.activemq:brokerName=localhost,destinationName=ActiveMQ.Advisory.Queue,destinationType=Topic,type=Broker"

}

],

"TopicProducers": [],

"BrokerName": "localhost",

"OpenWireURL": "tcp:\/\/NOTE140082:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600",

"MinMessageSize": 1024,

"QueueSubscribers": [],

"TotalDequeueCount": 0,

"TemporaryTopics": [],

"BrokerVersion": "5.13.2",

"AverageMessageSize": 1024,

"StorePercentUsage": 0,

"TemporaryQueueProducers": [],

"TotalEnqueueCount": 3,

"Persistent": true,

"TransportConnectors": {

"amqp": "amqp:\/\/NOTE140082:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600",

"mqtt": "mqtt:\/\/NOTE140082:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600",

"openwire": "tcp:\/\/NOTE140082:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600",

"ws": "ws:\/\/NOTE140082:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600",

"stomp": "stomp:\/\/NOTE140082:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600"

},

"InactiveDurableTopicSubscribers": [],

"TemporaryTopicSubscribers": [],

"TemporaryQueueSubscribers": [],

"DynamicDestinationProducers": [],

"MemoryPercentUsage": 0,

"MemoryLimit": 726571418,

"Queues": [

{

"objectName": "org.apache.activemq:brokerName=localhost,destinationName=1111,destinationType=Queue,type=Broker"

},

{

"objectName": "org.apache.activemq:brokerName=localhost,destinationName=22222,destinationType=Queue,type=Broker"

}

],

"TotalConnectionsCount": 0,

"UptimeMillis": 82705502,

"DataDirectory": "E:\\apache-activemq-5.13.2\\data",

"TempLimit": 53687091200,

"JobSchedulerStoreLimit": 0,

"JobSchedulerStorePercentUsage": 0,

"SslURL": "",

"StatisticsEnabled": true,

"CurrentConnectionsCount": 0,

"JMSJobScheduler": null,

"TotalProducerCount": 0,

"MaxMessageSize": 1024,

"TempPercentUsage": 0

}

}

获取单个属性的值

http://localhost:8161/api/jolokia/read/org.apache.activemq:brokerName=localhost,type=Broker/BrokerId

http://localhost:8161/api/jolokia/read/org.apache.activemq:brokerName=localhost,type=Broker/ StompURL

搜索broker。

http://localhost:8161/api/jolokia/search/*:type=Broker,brokerName=*

这里可以用在初始获取broker信息的时候使用。因为如果activemq如果配置了jmxDomainName,<mbean name>就要写成:<jmxDomainName>:type,brokerName=。如果不配置默认是:org.apache.activemq。

<managementContext>

<managementContext createConnector="true" jmxDomainName="test.domain"/>

</managementContext>

http://localhost:8161/api/jolokia/read/test.domain:brokerName=localhost,type=Broker/BrokerId

这个能搜索所有的队列,包括队列的属性。但是如果当前没有队列,会返回错误。

http://localhost:8161/api/jolokia/read/org.apache.activemq:brokerName=localhost,type=Broker,destinationType=Queue,destinationName=*

通过broker的属性queues,只能拿到队列的名称列表,拿不到具体的队列属性。

http://localhost:8161/api/jolokia/read/test.domain:brokerName=localhost,type=Broker/Queues

jolokia官方在线文档:

https://jolokia.org/reference/html/index.html

jolokia官方pdf文档:

https://jolokia.org/reference/pdf/jolokia-reference.pdf

Activemq Jolokia的更多相关文章

  1. ActiveMQ点对点的消息发送案例

    公司最近会用MQ对某些业务进行处理,所以,这次我下载了apache-activemq-5.12.0-bin把玩下. 基于练习方便需要,使用Windows的版本. 参考的优秀文章: activemq的几 ...

  2. activemq.bat 在window7 x64下启动(安装)报错解决方案

    在启动  apache-activemq-5.15.2/activemq.bat  时候报错,提示以下信息: wrapper | --> Wrapper Started as Consolewr ...

  3. 【ActiveMQ】ActiveMQ在Windows的安装,以及点对点的消息发送案例

    公司最近会用MQ对某些业务进行处理,所以,这次我下载了apache-activemq-5.12.0-bin把玩下. 基于练习方便需要,使用Windows的版本. 参考的优秀文章: activemq的几 ...

  4. Windows下安装ActiveMQ

    到官网(http://activemq.apache.org/download-archives.html)下载最新发布的压缩包(我下的是5.15.9)到本地后解压(我解压到D盘Dev目录下)即可.进 ...

  5. activeMQ---->ActiveMQ的使用(一)

    这里通过一个入门的案例来体会一下ActiveMQ的作用以及使用方法.你要做一个不动声色的大人了.不准情绪化,不准偷偷想念,不准回头看.去过自己另外的生活.你要听话,不是所有的鱼都会生活在同一片海里. ...

  6. 使用jolokia api监控ActiveMQ

    jolokia api提供了一种通过HTTP访问JMX获得AMQ后台数据的一种方式,即Restful Api #!/usr/bin/env python # -*- coding:utf-8 -*- ...

  7. Apache ActiveMQの版本更迭和Apache ActiveMQの故障转移

    本文描述apache activemq 版本更迭的原因以及Apache ActiveMQのThe Failover Transport new features in 5.2.0  1.对信息的传输/ ...

  8. SharedFile System Master Slave(共享文件系统)做ActiveMQ集群

    WINDOWS环境下:http://www.apache.org/dyn/closer.cgi?path=/activemq/apache-activemq/5.9.0/apache-activemq ...

  9. ActiveMQ笔记:管理和监控

    ActiveMQ提供了比较丰富的监控和管理工具.在ActiveMQ的网页里(http://activemq.apache.org/how-can-i-monitor-activemq.html)提到了 ...

随机推荐

  1. C# 中实现单例模式

    文章目录 简介 不安全线程的单例模式 简单安全线程带锁 双重检查 - 带锁 安全初始化 安全并且懒汉式静态初始化 带泛型的懒汉式单例 异常 提高效率 总结 简介 单例模式是软件工程中广为人知的设计模式 ...

  2. 如何用easyui+JAVA 实现动态拼凑datagrid表格(续)

    前面一段时间写了一篇文章: 如何用easyui+JAVA 实现动态拼凑datagrid表格 这篇文章的话,效果是可以实现,但是经过我反复试验,还是存在一些问题的. 今天这篇文章就是向大家介绍下如何避免 ...

  3. js构建ui的统一异常处理方案(四)

    上一篇我们介绍了统一异常处理方案的设计方案,这一篇我们将直接做一个小例子,验证我们的设计方案. 例子是一个todo的列表界面(页面代码参考于https://github.com/zongxiao/Dj ...

  4. php 简单权限管理实现

    权限管理介绍.与简单实现思想 权限管理 此函数为模块访问权限管理 实现思路为:根据传进来的权限值,进入不同的权限获取区间,然后根据模块名字判断是否有这个模块的访问权限 使用说明:在每一个模块开始之前调 ...

  5. Premiere Pro & After Effects插件开发调试方法

    在给Adobe Premiere Pro(PR)和Adobe After Effects(AE)插件开发时,对于实时调试插件有着很强的需求.除了业务需求外,单步调试插件还能够摸清楚Plugin和Hos ...

  6. SQL Server中smalldatetime的日期范围为何是[1900-01-01,2079-06-06]

    本文目录列表: 1.SQL Server中的基准日期 2.smalldatetime的日期范围 3.smalldatetime的日期范围和无符号2字节整数的关系 4.总结语 5.参考清单列表   SQ ...

  7. 分享一个UI与业务逻辑分层的框架(二)

    序言 第一篇讲解了UI与业务逻辑分层的框架(UIMediator)的使用.本篇将说明该框架的原理及代码实现. 整体结构 UI与后台类绑定主要分为UI输入->后台属性,后台属性-UI更新两部分,为 ...

  8. JS基础之对象

    JS中一切皆为对象,这是一句常说的话.了解JS对象,从这句话开始吧.JS中的基本数据类型如number,bool,字符串,数组,null,undefined等等都是对象. 对象的本质: 带有属性和方法 ...

  9. 从零开始学Python第八周:网络编程基础(socket)

    Socket网络编程 一,Socket编程 (1)Socket方法介绍 Socket是网络编程的一个抽象概念.通常我们用一个Socket表示"打开了一个网络链接",而打开一个Soc ...

  10. golang中如何使用http,socket5代理

    Golang Http use socket5 proxy 因为最近想爬取一些网站上的视频,无奈网站在墙外,只能通过代理进行爬取,因此在网上搜索关于golang使用代理的方法. 功夫不负有心人,最后我 ...