打开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. 将richTextBox中的内容写入txt文件发现不换行(解决方法),在richTextBox指定位置插入文字

    string pathname = dt.ToString().Replace(":", ""); string str = richTextBoxResult ...

  2. SQL Server SQL性能优化之--数据库在“简单”参数化模式下,自动参数化SQL带来的问题

    数据库参数化的模式 数据库的参数化有两种方式,简单(simple)和强制(forced),默认的参数化默认是“简单”,简单模式下,如果每次发过来的SQL,除非完全一样,否则就重编译它(特殊情况会自动参 ...

  3. 【Java】子类的链式调用

    记录最近在项目设计中遇到的一个小问题. 前提:有这样两个POJO类,它们都可以通过链式调用的方式来设置其属性值,其中一个类继承了另一个类. 问题:通过链式调用,子类对象访问父类方法后,如何使返回对象仍 ...

  4. css3元素简单的闪烁效果(html5 jquery)

    css3 Animation: @-webkit-keyframes twinkling{ /*透明度由0到1*/ 0%{ opacity:0; /*透明度为0*/ } 100%{ opacity:1 ...

  5. 速战速决 (5) - PHP: 动态地创建属性和方法, 对象的复制, 对象的比较, 加载指定的文件, 自动加载类文件, 命名空间

    [源码下载] 速战速决 (5) - PHP: 动态地创建属性和方法, 对象的复制, 对象的比较, 加载指定的文件, 自动加载类文件, 命名空间 作者:webabcd 介绍速战速决 之 PHP 动态地创 ...

  6. 家族/亲戚(relation)

    题目描述 若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系. 规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚.如果x,y是 ...

  7. Integer 与int 的区别

    int 是java 提供的8 种原始数据类型之一.Java 为每个原始类型提供了封装类,Integer 是java 为int 提供的封装类.int 的默认值为0,而Integer 的默认值为null, ...

  8. git 常用指令

    下载项目 git clone https://git.oschina.net/jianqingwang/jianblog.git 注意,clone跟的是项目地址 查看分支(也就是版本) git bra ...

  9. java代码实现队列的优化

    package com.voole.queun; /** * @Decription 队列 * @author TMAC-J * */ public class Queun { /** * 初始化队列 ...

  10. ASP.NET MVC搭建项目后台UI框架—9、服务器端排序

    ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NET M ...