ActiveMQ笔记:管理和监控
ActiveMQ提供了比较丰富的监控和管理工具。在ActiveMQ的网页里(http://activemq.apache.org/how-can-i-monitor-activemq.html)提到了很多ActiveMQ自带以及第三方的监控管理工具。
本文主要介绍ActiveMQ自带的管理工具webconsole,基于Jolokia的开源的管理工具http://hawt.io/,以及使用ActiveMQ的Advisory messages来自己编程监控ActiveMQ的状态。
WebConsole
要使用WebConsole,需要在ActiveMQ的配置文件里加入jetty.xml。
<import resource="file:${activemq.conf}/jetty.xml"/>
Jetty.xml配置了ActiveMQ里使用的Jetty web服务器。通过该配置文件,使能了WebConsole和ActiveMQ内置的基于Jolokia的REST API。
另外,还需要修改jetty-realm.properties里的登陆名和密码。
完成配置后,可以通过http://${Host}:8161/admin/来访问WebConsole。通过WebConsole可以知道ActiveMQ的一些主要信息,如Queues,Topics,等。详细功能可以参见:http://activemq.apache.org/web-console.html。
Hawt.io
ActiveMQ提供了比较丰富的基于JMX的管理功能。使用,jconsole等JMX的管理工具可以通过JMX接口来管理ActiveMQ。但是,如果通过远程使用JMX,需要较多的配置工作。
开源的Jolokia项目,提供了通过REST API来访问JMX管理功能的能力。ActiveMQ内部已经集成了Jolokia类库,通过WebConsole相同的配置,可以使能基于Jolokia的REST API访问ActiveMQ。
Hawt.io是一个开源的使用Jolokia的第三方管理工具。该工具可以作为一个单独的jar文件执行,也可以作为一个war文件部署到Tomcat/Jetty等Servlet Container里。通过http://hawt.io/可以下载该工具。
使用Hawt.io,可以提供比WebConsole更丰富的管理功能。使用Hawt.io需要一些配置工作。
l 建立Hawt.io和ActiveMQ的连接时,port为8161,path为api/jolokia。(这些是ActiveMQ的缺省配置,可以在ActiveMQ的jetty.xml修改)
l 如果Hawt.io和ActiveMQ不在一台机器时,需要设置hawtio.proxyWhitelist这个JVM的system property来启动Hawt.io。如果是以jar文件运行Hawt.io,可以在启动的command line设置,如:
java -Dhawtio.proxyWhitelist=${Host},127.0.0.1,localhost -jar hawtio-app-1.5.7.jar
Advisory消息
ActiveMQ内部提供了一些管理的Topics,通过Advisory消息可以向这些Topics发送消息报告ActiveMQ内部的状态,例如Client Connection的建立,Queue的建立,Topics的建立等。ActiveMQ的网页(http://activemq.apache.org/advisory-message.html)提供了详细的Advisory消息的信息,包括Topics名字,Default使能的情况,以及PolicyEntry的配置名等。
ActiveMQ支持Client利用wildcasts来接收多个Channels的消息。所以可以自己编写程序,监听“ActiveMQ.Advisory.>.”,从而得到所有的Advisory的管理消息。
为了使用Advisory的消息,需要做一些配置。PolicyEntry的使能,需要根据管理的需要,部分使能下面的entry。
<broker advisorySupport="true">
<destinationPolicy>
<policyMap>
<policyEntries>
<policyEntry topic=">" advisoryForConsumed="true"/>
<policyEntry topic=">" advisoryWhenFull="true"/>
<policyEntry topic=">" advisoryForDelivery="true"/>
<policyEntry topic=">" advisoryForDiscardingMessages="true"/>
<policyEntry topic=">" sendAdvisoryIfNoConsumers="true"/>
<policyEntry topic=">" advisoryForSlowConsumers="true"/>
<policyEntry topic=">" advisdoryForFastProducers="true"/>
</policyEntries>
</policyMap>
</destinationPolicy>
ActiveMQ笔记:管理和监控的更多相关文章
- ActiveMQ 的管理和监控
本章重点 理解 JMX 和 ActiveMQ 使用告警消息来监控 ActiveMQ 管理 ActiveMQ ActiveMQ 的日志配置 额,这本书终于读完了,虽然看到后面都是云里雾里的,但是总算是对 ...
- ActiveMQ笔记(5):JMX监控
系统上线运行后,及时监控报警是很必要的手段,对于ActiveMQ而言,主要监控的指标有:MQ本身的健康状况.每个队列的生产者数量.消费者数量.队列的当前消息数等. ActiveMQ支持JMX监控,使用 ...
- 《Apache kafka实战》读书笔记-管理Kafka集群安全之ACL篇
<Apache kafka实战>读书笔记-管理Kafka集群安全之ACL篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 想必大家能看到这篇博客的小伙伴,估计你对kaf ...
- Java系列笔记(4) - JVM监控与调优【转】
Java系列笔记(4) - JVM监控与调优[转] 目录 参数设置收集器搭配启动内存分配监控工具和方法调优方法调优实例 光说不练假把式,学习Java GC机制的目的是为了实用,也就是为了在 ...
- ActiveMQ笔记(7):如何清理无效的延时消息?
ActiveMQ的延时消息是一个让人又爱又恨的功能,具体使用可参考上篇ActiveMQ笔记(6):消息延时投递,在很多需要消息延时投递的业务场景十分有用,但是也有一个缺陷,在一些大访问量的场景,如果瞬 ...
- 系统内存和CPU管理、监控
本博文的主要内容有 .系统内存管理.监控:vmstat和free -mt .系统CPU管理.监控:sar -u.mpstat.uptime linux系统内存和CPU是在系统运行的过程中不断消耗的资源 ...
- Linux 基础 —— Linux 进程的管理与监控
这篇文章主要讲 Linux 中进程的概念和进程的管理工具.原文:http://liaoph.com/inux-process-management/ 进程的概念 什么是进程 进程(Process)是计 ...
- Oracle数据库web维护管理及监控
1.Oracle数据库客户端的种类及现状 目前Oracle数据库维护管理,通常是使用客户端软件:PL/SQL Developer,SQL* Plus,toad,em等进行数据的管理.维 ...
- 基于spring-boot和docker-java实现对docker容器的动态管理和监控[附完整源码下载]
(我是个封面) docker简介 Docker 是一个开源的应用容器引擎,和传统的虚拟机技术相比,Docker 容器性能开销极低,因此也广受开发者喜爱.随着基于docker的开发者越来越多,doc ...
- spring-boot-plus集成Spring Boot Admin管理和监控应用
Spring Boot Admin Spring Boot Admin用来管理和监控Spring Boot应用程序 应用程序向我们的Spring Boot Admin Client注册(通过HTTP) ...
随机推荐
- Lambda表达式和For循环使用需要注意的一个地方
一个需要注意的地方看下面的代码: using System; using System.Collections.Generic; using System.Linq; namespace MyCsSt ...
- ROS——rqt
$ rosrun rqt_plot rqt_plot # 画出发布在topic上的数据变化图 $ rosrun rqt_graph rqt_graph #画出node关系图 $ rosrun rq ...
- cloudstack agent host Alert 告警处理
今天nagios告警: 172.17.9.76有Alert,看agent的日志有如下: (Agent-Handler-3:null) Connected to the server Lost conn ...
- block本质探寻一之内存结构
一.代码——命令行模式 //main.m #import <Foundation/Foundation.h> struct __block_impl { void *isa; int Fl ...
- 关于 class helper for ... 语法
转载于万一的博客https://www.cnblogs.com/del/archive/2009/10/13/1582789.html class helper 可能是从 Delphi 2007 增加 ...
- HO引擎近况20180111
明明想着10号更新了,怎么就忘了呢? 公司的项目又被砍了,几个同事被开,我又转到另外一下组了,难道真的是我到哪哪黄? 快过年了,今年公司年会就在附近,太好了不用想怎么编理由请假事了,还有可能中个奖品, ...
- K9F2G08U0C NAND FLASH 的地址分析
计算物理地址 K9F2G08U0C是samsun出产的FLASH,容量为256MB 页--Page: (2K + 64)Byte 块--Block: (128K + 4K)Byte 128 / 2 = ...
- C语言学习记录_2019.02.23
char类型的输出: scanf("%d",&i);//i=49; char x=i; printf("x=%d\n",x); printf(" ...
- 目标反射回波检测算法及其FPGA实现 之二:互相关/卷积/FIR电路的实现
目标反射回波检测算法及其FPGA实现之二: 互相关/卷积/FIR电路的实现 前段时间,接触了一个声呐目标反射回波检测的项目.声呐接收机要实现的核心功能是在含有大量噪声的反射回波中,识别出发射机发出的激 ...
- nginx如何做到TCP的负载均衡
原文:https://blog.csdn.net/u011218159/article/details/50966861 TCP 的 负载均衡 这个片段描述了如何通过nginx plus进行负 ...