Apache ActiveMQ是一個基於JMX規範的純Java消息中間件,它爲應用系統提供高效、靈活的消息同步與異步傳輸處理、存儲轉發、可靠傳輸的特性。web
消息隊列對於應用的健康運行很是重要,做爲運維人員,咱們須要時刻注意:運維
消息隊列的長度,以便確認是否存在大量堆積消息;異步
消息生產與消費的速率,以便確認業務的吞吐量與波動趨勢;url
消息隊列自己的運行健康指標,以免因爲消息沒法傳遞大範圍的影響應用;操作系統
使用優雲Monitor,經過簡單操做,便可實現ActiveMQ監控。下面,咱們演示部署的過程與監控的成果。插件
部署代理
Monitor經過Agent,採用web控制檯或者JMX的方式進行ActiveMQ監控。rest
本文以CentOS 7上的ActiveMQ爲例。採用web控制檯的方式進行監控。xml
下面,將逐步驟說明配置過程:中間件
步驟一:安裝代理
經過優雲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的方式監控,以獲取更多詳細的指標。