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的更多相关文章

  1. 【开源】简单4步搞定QQ登录,无需什么代码功底【无语言界限】

    说17号发超简单的教程就17号,qq核审通过后就封装了这个,现在放出来~~ 这个是我封装的一个开源项目:https://github.com/dunitian/LoTQQLogin ————————— ...

  2. 简单几步配置gitlab

    简单几步配置gitlab 之前配置gitlab需要很多步骤,要装apache2.ruby.tomcat.mysql等一片东西.有没有更简单的方式呢?现在可以借助bitnami,简化了很多. 可以参考v ...

  3. css3简单几步画一个乾坤图

    原文:[原创]css3简单几步画一个乾坤图 效果如上,鼠标移上去会有动画. 代码如下非常简单: <html> <head> <style> .outer{heigh ...

  4. 【转】简单十步让你全面理解SQL

    简单十步让你全面理解SQL 很多程序员认为SQL是一头难以驯服的野兽.它是为数不多的声明性语言之一,也因为这样,其展示了完全不同于其他的表现形式.命令式语言. 面向对象语言甚至函数式编程语言(虽然有些 ...

  5. 最简单的 RabbitMQ 监控方法 - 每天5分钟玩转 OpenStack(158)

    这是 OpenStack 实施经验分享系列的第 8 篇. 先来看张图:这是 Nova 的架构图,我们可以看到有两个组件处于架构的中心位置:数据库和Queue.数据库保存状态信息,而几乎所有的 nova ...

  6. 大麦盒子(domybox)无法进入系统解决方案!【简单几步】

    大麦无法进入系统解决方案![简单几步]前提准备:电脑一台盒子控制台软件盒子开机并联网并且盒子和电脑处于同一个路由器下的网络! 前提准备:电脑一台盒子控制台软件盒子开机并联网并且盒子和电脑处于同一个路由 ...

  7. 如何将新项目添加到github仓库中?只需简单几步~即可实现

    问题描述:新建了一个项目,如何将其设置为git项目?如何关联到github上的仓库? 只需简单几步,但前提是需要已经安装好了git,并且有github账户 本文使用IntelliJ IDEA 其他编辑 ...

  8. 简单几步实现 IOS UITextField输入长度的控制

    在ios开发过程中,我们有时候需要对UITextField的输入长度进行控制,比如输入手机号码最大长度为11位等,而ios自身又不像android那样可以设置输入框的输入长度,接下来通过简单几步实现这 ...

  9. 简单三步同步你的 VSCode 用户配置

    https://www.cnblogs.com/knight-errant/p/10444777.html 设备重装,换设备,VSCode 又要重新配置了?不不不,简单三步,让你的 VSCode 配置 ...

随机推荐

  1. vue的首页渲染了两次的原因以及解决方法

    现在在用vue做一些单页面应用的东西,遇到了些许问题啊,比如我再渲染首页的时候,会渲染两次,查看了一下原因,原来是在写路由的时候写的格式错了: 这样的时候,初始的时候就是加载的exam_list页面, ...

  2. UITableView-FDTemplateLayoutCell 学习笔记

    本文转载至 http://www.tuicool.com/articles/I7ji2uM 原文  http://everettjf.github.io/2016/03/24/learn-uitabl ...

  3. javaWeb项目重命名的问题

    tomcat项目名称修改 步骤: 1.对工程重命名(选择工程,右键Refactor->Rename)      2.修改Web路径(选择工程,右键Properties->MyEclipse ...

  4. PowerDesigner 同步Name到Comment 及 同步 Comment 到Name

    PowerDesigner中使用方法为:     PowerDesigner->Tools->Execute Commands->Edit/Run Scripts 代码一:将Name ...

  5. 《转》Python学习(13)-Python的字符编码

    转自 http://www.cnblogs.com/BeginMan/p/3166363.html 一.字符编码中ASCII.Unicode和UTF-8的区别 点击阅读:http://www.cnbl ...

  6. java基础---->数组的基础使用(二)

    这里对List(jdk 1.7)列表里面的一些方法做一些简单的分析,以避免有些函数的误用.手写瑶笺被雨淋,模糊点画费探寻,纵然灭却书中字,难灭情人一片心. List中注意的方法 一.Arrays.as ...

  7. java.util.concurrent.Future Basics

    Hereby I am starting a series of articles about future concept in programming languages (also known ...

  8. sencha touch 在线实战培训 第一期 第六节

    2014.1.11晚上8点开的课 本来计划8号晚上开课的,不过那天晚上小区电路出了问题,所以没有讲成.后面两天我又有点其他的事情,所以放到了11号来讲. 本期培训一共八节,前三堂免费,后面的课程需要付 ...

  9. parted分区脚本

    #!/bin/bash #Used to fomat 6 disks PATH=/bin:/sbin:/usr/bin:/usr/sbin export PATH disk_to_parted=&qu ...

  10. 【CF802L】Send the Fool Further! (hard) 高斯消元

    [CF802L]Send the Fool Further! (hard) 题意:给你一棵n个节点的树,每条边有长度,从1号点开始,每次随机选择一个相邻的点走,走到一个叶子时就停止,问期望走的总路程. ...