天天看點

用Monitor簡單3步監控ActiveMQ

apache activemq是一個基于jmx規範的純java消息中間件,它為應用系統提供高效、靈活的消息同步與異步傳輸處理、存儲轉發、可靠傳輸的特性。

消息隊列對于應用的健康運作非常重要,作為運維人員,我們需要時刻注意:

消息隊列的長度,以便确認是否存在大量堆積消息;

消息生産與消費的速率,以便确認業務的吞吐量與波動趨勢;

消息隊列本身的運作健康名額,以避免由于消息無法傳遞大範圍的影響應用;

使用優雲monitor,通過簡單操作,即可實作activemq監控。下面,我們示範部署的過程與監控的成果。

部署

優雲monitor通過agent,采用web控制台或者jmx的方式進行activemq監控。 

本文以centos 7上的activemq為例。采用web控制台的方式進行監控。 

下面,将逐漸驟說明配置過程:

步驟一:安裝代理

通過優雲monitor的部署指令,即可快速完成代理的部署:

進入 部署 界面

選擇對應的作業系統,複制指令,并在目錄作業系統上執行即可:

用Monitor簡單3步監控ActiveMQ

步驟二:配置插件

由于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://<hostname>: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簡單3步監控ActiveMQ

優雲monitor采集代理預設周期采集系統的cpu,記憶體,磁盤等名額, 用以輔助分析相關應用運作情況

由上述圖檔可知,該系統已超負荷運作,可能是由于運作了太多的應用程式。

消息隊列方面名額

用Monitor簡單3步監控ActiveMQ

通過優雲monitor可以清晰觀察activemq隊列的消息消費者、生産者等變化資訊,以便分析相關服務上線、離線時間

通過觀察activemq隊列的入隊、出隊以及隊列未被消費的消息數量,可以分析出相關服務是否正常以及隊列消費能力是否存在瓶頸

由上述圖檔可知,該隊列的消費者已全部下線。

消息主題方面名額

用Monitor簡單3步監控ActiveMQ

通過優雲monitor可以持續追蹤activemq主題的釋出、訂閱等資訊,以便分析對應服務上線、離線時間

通過觀察activemq主題的入隊、出隊以及隊列未被消費的消息數量,可以分析出相關服務是否正常以及對應服務是否存在瓶頸  

上述文章介紹的方式為通過activemq的web控制台采集相應的名額。當然,我們也能通過jmx的方式監控,以擷取更多詳細的名額。