大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 Rabbitmq監控詳解

Rabbitmq監控詳解

更新時間:2021-09-15 10:58:45 來源:動力節點 瀏覽1812次

Rabbitmq監控是Rabbitmq教程中需要學習的重要的部分,下面小編就來給大家進行詳細介紹。

1.搜集日志信息

通過ELK搜集集群節點中的日志信息,對于ERROR信息,進行郵件告知相關的維護人員及時進行處理。

2.監控硬件資源及進程

公司已經有監控系統,直接將如下磁盤、內存及端口、URL信息在監控中進行配置即可。

磁盤

監控每臺服務器的磁盤空間,重點監控如下兩個目錄:

log目錄

即/app/log 目錄。日志文件可以通過定期壓縮清理,保證控制在一定的大小內。

data目錄

即/app/data 目錄,這個目錄主要堆積的數據還是未消費的已經持久化到磁盤上的消息。這個需要及時對消息進行監控。

內存

監控服務器的內存使用情況,當達到閥值的情況下,進行提前告警。

監控進程

主要是監控5672端口,及http://xxxx:15672訪問地址

3.通過rest接口進行監控

依托于rabbitmq提供的強大的rest api,我們可以很方便的獲取到集群中的各個節點信息,從而根據具體的需求,進行全方位的監控。

在公司已經采購的監控系統和自行搭建的zabbix監控中,都能夠很好的支持rest api。可以通過監控系統對json結果的解析,達到告警的目的。

消息監控

消息監控可以通過定時調用rest接口,獲取隊列的未消費數量,對超過一定數量的mq消息,提供短信郵件告警;

獲取消息的rest接口地址為:

http://xxx:15672/api/queues

消息內容示例(只截取部分內容):

[{
    "memory": 55568,
    ...
    "messages": 21,                              #消息總數量
    ...
    "messages_ready": 21,                        #待處理消息數量
    ...
    "messages_unacknowledged": 0,                #未確認消息數量
    ...
    "idle_since": "2018-07-02 14:02:04",
    "consumer_utilisation": null,
    "policy": "hao123",
    "exclusive_consumer_tag": null,
    "consumers": 0,
    "slave_nodes": ["rabbit@rabbitmqstg03", "rabbit@rabbitmqstg04"],
    "synchronised_slave_nodes": ["rabbit@rabbitmqstg03", "rabbit@rabbitmqstg04"],
    "recoverable_slaves": ["rabbit@rabbitmqstg03", "rabbit@rabbitmqstg04"],
    "state": "running",
    ...
    "message_bytes_ram": 13086,                  #消息占用的內存大小
    "message_bytes_persistent": 2816,            #消息占用的磁盤大小
    ...
    "name": "ha.queue_123",
    "vhost": "/123",
    "durable": true,
    "auto_delete": false,
    "exclusive": false,
    "arguments": {},
    "node": "rabbit@rabbitmqstg02"
}]

文件描述符、socket文件描述符、erlang進程監控

通過rest接口獲取到每個集群中的節點信息,通過實際值和閥值的大小,及時的進行告警,這一步告警方式,可以根據嚴重程度,依次郵件、微信、短信通知到相關的人員。

獲取節點的rest接口地址為:

http://xxx:15672/api/nodes

集群節點內容示例(只截取部分內容):

[{
    "cluster_links": [{
        "peer_addr": "10.1.110.39",
        "peer_port": 51715,
        "sock_addr": "10.1.110.37",
        "sock_port": 25672,
        "stats": {...},
        "name": "rabbit@rabbitmqstg04"
    }, ...],
    "disk_free": 28271468544,                 # 磁盤使用量
    "fd_used": 58,                            # 文件描述符使用數
    ...
    "mem_used": 58362720,                     # 內存使用量
    "mnesia_disk_tx_count": 7,
    "mnesia_ram_tx_count": 13108,
    "proc_used": 225,                         # erlang進程使用數
    "sockets_used": 0,                        # socket描述符已經使用數
    "fd_total": 65536,                        # 文件描述符總數
    "sockets_total": 58890,                   # socket描述符總數
    "mem_limit": 1607527628,                  # 內存閥值
    "disk_free_limit": 10000000000,           # 磁盤閥值
    "proc_total": 1048576,                    # erlang進程總數
    ...
    "log_file": "/app/rabbitmq/rabbitmq_server-3.6.1/log/rabbitmq/rabbit@rabbitmqstg02.log",
    "sasl_log_file": "/app/rabbitmq/rabbitmq_server-3.6.1/log/rabbitmq/rabbit@rabbitmqstg02-sasl.log",
    "db_dir": "/app/rabbitmq/rabbitmq_server-3.6.1/data/rabbit@rabbitmqstg02",
    "config_files": ["/app/rabbitmq/rabbitmq_server-3.6.1/etc/rabbitmq/rabbitmq.config"],
    ...
    "name": "rabbit@rabbitmqstg02",
    "type": "disc",
    "running": true
}]

4.監聽堵塞消息

可以在MQ中專門創建一個監控的隊列,定時的發送和消費隊列中的消息,并且通過的如下的代碼去監控隊列是否已經堵塞,如果監聽到隊列已經堵塞,就立即發送告警的短信和郵件。

關于是否需要手動將故障機器剔除集群,這個有待商榷,但是如果要做的話,是可以在這里做到的。

ConnectionFactory factory = new ConnectionFactory();
Connection connection = factory.newConnection();
connection.addBlockedListener(new BlockedListener() {
    public void handleBlocked(String reason) throws IOException {
        // Connection is now blocked
    }
    public void handleUnblocked() throws IOException {
        // Connection is now unblocked
    }
});

以上就是關于“Rabbitmq監控詳解”的介紹,對Java感興趣的朋友可以關注動力節點Java在線學習,里面有很多相關資料文檔可以學習,在Java視頻教程頁面中有入門到精通全套教程能夠免費下載學習,希望對大家能夠有所幫助。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲国产九九精品一区二区 | 国产精品久久久久影院嫩草 | 青草青草久热精品视频99 | 久久亚洲精品中文字幕二区 | 成人黄色在线视频 | 999热视频| 免费深夜视频 | 亚洲在线视频播放 | 99热在线精品播放 | 在线国产中文字幕 | 97人人在线观看 | 99热久久国产这里有只有精品 | 一级毛片www | 天天插夜夜| 国产精品免费久久久久影院小说 | 97在线视| 乱人伦精品一区二区 | 欧美日韩高清观看一区二区 | 中文偷拍视频在线观看 | 四虎影视8848a四虎在线播放 | 91综合精品网站久久 | 2020国产成人精品免费视频 | 久久成人在线观看 | 国产成人99精品免费观看 | 色偷偷资源网 | 国内精自品线一区91 | 亚洲欧美二区三区久本道 | 一级播放 | 国产美女久久精品香蕉69 | 一级做a爱片久久蜜桃 | 国产男女xoxo在线视频 | 高清免费毛片 | 四色成人 | 国产精品一国产精品免费 | 久久久久久久国产 | 青草青青在线视频观看 | 九九精品免视看国产成人 | 日韩中文字幕免费观看 | 天天干夜夜欢 | 99在线观看视频免费精品9 | 亚洲涩涩精品专区 |