用Monitor简单3步监控中间件ActiveMQ
Apache ActiveMQ是一个基于JMX规范的纯Java消息中间件,它为应用系统提供高效、灵活的消息同步与异步传输处理、存储转发、可靠传输的特性。
消息队列对于应用的健康运行非常重要,作为运维人员,我们需要时刻注意:
消息队列的长度,以便确认是否存在大量堆积消息;
消息生产与消费的速率,以便确认业务的吞吐量与波动趋势;
消息队列本身的运行健康指标,以避免由于消息无法传递大范围的影响应用;
使用优云Monitor,通过简单操作,即可实现ActiveMQ监控。下面,我们演示部署的过程与监控的成果。
部署
Monitor通过Agent,采用web控制台或者JMX的方式进行ActiveMQ监控。
本文以CentOS 7上的ActiveMQ为例。采用web控制台的方式进行监控。
下面,将逐步骤说明配置过程:
步骤一:安装代理
通过优云Monitor的部署指令,即可快速完成代理的部署:
进入 部署 界面
选择对应的操作系统,复制命令,并在目录操作系统上执行即可:

步骤二:配置插件
由于ActiveMQ的监控需要用户名与密码,我们必须修改代理的配置,提供监控连接信息:
#通过ActiveMQ的web控制台获取相关指标cd /etc/monitor-agent/conf.d/
cp activemq_xml.yaml.example activemq_xml.yaml#修改配置连接activemq web consolevi activemq_xml.yaml
文件修改如下:
init_config:
instances:
- url: http://127.0.0.1:8161
# the url will probably be something like http://:8161
username:********
password: *************
步骤三:重启代理,并确认数据采集结果
[root@localhost ~]$ service datamonitor-agent restart
[root@localhost ~]$ service datamonitor-agent info
activemq_xml
------------- instance #0 [OK]- Collected 118 metrics, 0 events & 2 service checks#上述表示已经采集到118个指标,说明采集正确
监控
在部署完成后,我们即可在优云平台上查看ActiveMQ的详细指标,以帮助我们快速、准确定位问题。
操作系统方面指标

Monitor采集代理默认周期采集系统的cpu,内存,磁盘等指标, 用以辅助分析相关应用运行情况
由上述图片可知,该系统已超负荷运行,可能是由于运行了太多的应用程序。
消息队列方面指标

通过Monitor可以清晰观察ActiveMQ队列的消息消费者、生产者等变化信息,以便分析相关服务上线、离线时间
通过观察ActiveMQ队列的入队、出队以及队列未被消费的消息数量,可以分析出相关服务是否正常以及队列消费能力是否存在瓶颈
由上述图片可知,该队列的消费者已全部下线。
消息主题方面指标

通过Monitor可以持续追踪ActiveMQ主题的发布、订阅等信息,以便分析对应服务上线、离线时间
通过观察ActiveMQ主题的入队、出队以及队列未被消费的消息数量,可以分析出相关服务是否正常以及对应服务是否存在瓶颈
上述文章介绍的方式为通过ActiveMQ的web控制台采集相应的指标。当然,我们也能通过JMX的方式监控,以获取更多详细的指标。
用Monitor简单3步监控中间件ActiveMQ的更多相关文章
- 【开源】简单4步搞定QQ登录,无需什么代码功底【无语言界限】
说17号发超简单的教程就17号,qq核审通过后就封装了这个,现在放出来~~ 这个是我封装的一个开源项目:https://github.com/dunitian/LoTQQLogin ————————— ...
- 简单几步配置gitlab
简单几步配置gitlab 之前配置gitlab需要很多步骤,要装apache2.ruby.tomcat.mysql等一片东西.有没有更简单的方式呢?现在可以借助bitnami,简化了很多. 可以参考v ...
- css3简单几步画一个乾坤图
原文:[原创]css3简单几步画一个乾坤图 效果如上,鼠标移上去会有动画. 代码如下非常简单: <html> <head> <style> .outer{heigh ...
- 【转】简单十步让你全面理解SQL
简单十步让你全面理解SQL 很多程序员认为SQL是一头难以驯服的野兽.它是为数不多的声明性语言之一,也因为这样,其展示了完全不同于其他的表现形式.命令式语言. 面向对象语言甚至函数式编程语言(虽然有些 ...
- 最简单的 RabbitMQ 监控方法 - 每天5分钟玩转 OpenStack(158)
这是 OpenStack 实施经验分享系列的第 8 篇. 先来看张图:这是 Nova 的架构图,我们可以看到有两个组件处于架构的中心位置:数据库和Queue.数据库保存状态信息,而几乎所有的 nova ...
- 大麦盒子(domybox)无法进入系统解决方案!【简单几步】
大麦无法进入系统解决方案![简单几步]前提准备:电脑一台盒子控制台软件盒子开机并联网并且盒子和电脑处于同一个路由器下的网络! 前提准备:电脑一台盒子控制台软件盒子开机并联网并且盒子和电脑处于同一个路由 ...
- 如何将新项目添加到github仓库中?只需简单几步~即可实现
问题描述:新建了一个项目,如何将其设置为git项目?如何关联到github上的仓库? 只需简单几步,但前提是需要已经安装好了git,并且有github账户 本文使用IntelliJ IDEA 其他编辑 ...
- 简单几步实现 IOS UITextField输入长度的控制
在ios开发过程中,我们有时候需要对UITextField的输入长度进行控制,比如输入手机号码最大长度为11位等,而ios自身又不像android那样可以设置输入框的输入长度,接下来通过简单几步实现这 ...
- 简单三步同步你的 VSCode 用户配置
https://www.cnblogs.com/knight-errant/p/10444777.html 设备重装,换设备,VSCode 又要重新配置了?不不不,简单三步,让你的 VSCode 配置 ...
随机推荐
- 使用 requests 维持会话
什么是 Cookie 和 Session: 简单来说,我们访问每一个互联网页面,都是通过 HTTP 协议进行的,而 HTTP 协议是一个无状态协议,所谓的无状态协议即无法维持会话之间的状态.比如,仅使 ...
- 如何构建日均千万PV Web站点 (三) Sharding
其实国内许多大型网站为了应对日益复杂的业务场景,通过使用分而治之的手段将整个网站业务分成不同的产品线,比如说国内那些大型购物交易网站它们都将自己的网站首页.商铺.订单.买家.卖家等拆分不同的产品线,分 ...
- mybatis 之 parameterType="HashMap"参数包含list
/** * 获得人气组合商品详情 * @param paramMap * @return */ public List<Goods> getCheckGoodsCombination(Ma ...
- 阿里云CentOS7挂载SSD云盘的方法
https://bbs.aliyun.com/read/151152.html 阿里云购买的第2块云盘默认是不自动挂载的,需要手动配置挂载上. 1.查看SSD云盘 sudo fdisk -l Disk ...
- Oracle和Mysql中mybatis模糊匹配查询区别
1.Oracle AND NAME LIKE '%'||#{name}||'%' 2.Mysql AND NAME LIKE "%"#{name}"%"
- 类型化dataset分页
SELECT TOP (@每页行数) 所选列FROM 表名WHERE (主键 NOT IN( SELECT TOP ((@页数-1)*@每页行数) 主键FROM 表名where ( 条件)))AND ...
- 【大数据系列】hadoop上传文件报错_COPYING_ could only be replicated to 0 nodes
使用hadoop上传文件 hdfs dfs -put XXX 17/12/08 17:00:39 WARN hdfs.DFSClient: DataStreamer Exception org.ap ...
- HDFS的客户端操作
命令行操作: -help 功能:输出这个命令参数手册 -ls 功能:显示目录信息 示例: hadoop fs -ls hdfs://hadoop-serv ...
- Windows平台下PHP7添加Sqlserver扩展
1.7.0.x 7.0.x的扩展下载地址: Microsoft Drivers for PHP for SQL Server https://www.microsoft.com/en-us/down ...
- vuex报错: [vuex] Expects string as the type, but found undefined.
报错如图 检查了好久,发现 import * as types from '../mutation-types'const actions = { add({commit}){ commit(type ...