Activemq Jolokia
打开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
这个能搜索所有的队列,包括队列的属性。但是如果当前没有队列,会返回错误。
通过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的更多相关文章
- ActiveMQ点对点的消息发送案例
公司最近会用MQ对某些业务进行处理,所以,这次我下载了apache-activemq-5.12.0-bin把玩下. 基于练习方便需要,使用Windows的版本. 参考的优秀文章: activemq的几 ...
- activemq.bat 在window7 x64下启动(安装)报错解决方案
在启动 apache-activemq-5.15.2/activemq.bat 时候报错,提示以下信息: wrapper | --> Wrapper Started as Consolewr ...
- 【ActiveMQ】ActiveMQ在Windows的安装,以及点对点的消息发送案例
公司最近会用MQ对某些业务进行处理,所以,这次我下载了apache-activemq-5.12.0-bin把玩下. 基于练习方便需要,使用Windows的版本. 参考的优秀文章: activemq的几 ...
- Windows下安装ActiveMQ
到官网(http://activemq.apache.org/download-archives.html)下载最新发布的压缩包(我下的是5.15.9)到本地后解压(我解压到D盘Dev目录下)即可.进 ...
- activeMQ---->ActiveMQ的使用(一)
这里通过一个入门的案例来体会一下ActiveMQ的作用以及使用方法.你要做一个不动声色的大人了.不准情绪化,不准偷偷想念,不准回头看.去过自己另外的生活.你要听话,不是所有的鱼都会生活在同一片海里. ...
- 使用jolokia api监控ActiveMQ
jolokia api提供了一种通过HTTP访问JMX获得AMQ后台数据的一种方式,即Restful Api #!/usr/bin/env python # -*- coding:utf-8 -*- ...
- Apache ActiveMQの版本更迭和Apache ActiveMQの故障转移
本文描述apache activemq 版本更迭的原因以及Apache ActiveMQのThe Failover Transport new features in 5.2.0 1.对信息的传输/ ...
- SharedFile System Master Slave(共享文件系统)做ActiveMQ集群
WINDOWS环境下:http://www.apache.org/dyn/closer.cgi?path=/activemq/apache-activemq/5.9.0/apache-activemq ...
- ActiveMQ笔记:管理和监控
ActiveMQ提供了比较丰富的监控和管理工具.在ActiveMQ的网页里(http://activemq.apache.org/how-can-i-monitor-activemq.html)提到了 ...
随机推荐
- GIS项目中数据开源、工具开源、开发开源的解决方案
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 摆脱免费地图开发包的约束,拒绝商业地图软件的费用,高效.精确.完备是我 ...
- URL的组成格式
最近在学习js的Ajax方面的内容,发现自己对基础的计算机网络知识认识不足,所以大概了解了下. URL组成格式 图中中括号是可选项 protocol 协议,常用的协议是http hostname 主机 ...
- C#播放wav文件
C#使用HWQPlayer类播放wav文件 类的代码: using System.IO; using System.Runtime.InteropServices; namespace HoverTr ...
- 常用html、CSS、javascript前端命名规范
无论是从技术角度还是开发视角,对于web前端开发规范文档都有一定规范,本文就css3和html5的发展前景总结了一系列的web开发文档,仅供大家参考. 规范目的: 为提高团队协作效率, 便于后台人员添 ...
- 15、ASP.NET MVC入门到精通——MVC-路由
本系列目录:ASP.NET MVC4入门到精通系列目录汇总 Routing(路由) – URL url 作为广泛使用的Web用户接口,需要被重视 好的Url应该满足如下条件: URL应为获取某种资源提 ...
- entityframework学习笔记--005-给code first一个正确的解释
在微软官方关于ef7的介绍中强调,ef7将舍弃database first.model first,只保留code first的使用.这引起了很多人的担忧,担忧源自对code first的错误理解.因 ...
- AngularJS Directive 隔离 Scope 数据交互
什么是隔离 Scope AngularJS 的 directive 默认能共享父 scope 中定义的属性,例如在模版中直接使用父 scope 中的对象和属性.通常使用这种直接共享的方式可以实现一些简 ...
- HTML5学习笔记二 HTML基础
一.HTML 标题 HTML 标题(Heading)是通过<h1> - <h6> 标签来定义的. <h1>标题一</h1> <h2>标题二& ...
- ios 开发之单例模式
在iOS开发中,有很多地方都选择使用单例模式.有很多时候必须要创建一个对象,并且不能创建多个,用单例就为了防止创建多个对象.单例模式的意思就是某一个类有且只有一个实例.单例模式确保某一个类只有一个实例 ...
- iOS 学习 - 21 系统自带解析 XML
准备工作: new -> file -> other -> Empty ,在 Save As: 中随便起个名字后缀为 .xml 拷贝下面 <person> <stu ...