RabbitMQ Management API調用


RabbitMQ在運行時,偶爾會有一些死信,即消息未正常消費,造成消息積壓在消息隊列中, 一直卡住,重復循環消費原來的消息隊列

那么就需要有一種機制,來查看RabbitMQ是否有消息未正常消費,從而讓RabbitMQ消費端重新啟動服務,讓消息能順利消費(例如讓Windows Service重啟等)

首先,查看RabbitMQ Manage的界面,可以看到,這里未應答的消息總數是0,在某些特定的情況下,有可能會出現未應答的消息的,所以需要進行檢測

 

 

RabbitMQ Management API文檔地址:https://pulse.mozilla.org/api/

 

我們這里使用的API是/api/queues/vhost/name

請記住,其中vhost參數使用提默認的 ,需要Encoding為%2F

 

 

Postman中如下

權限部分使用Basic Auth,並輸入RabbitMQ Management的用戶名和密碼

 

返回的JSON如下

{
    "consumer_details": [],
    "arguments": {},
    "auto_delete": false,
    "backing_queue_status": {
        "avg_ack_egress_rate": 0.0,
        "avg_ack_ingress_rate": 0.0,
        "avg_egress_rate": 0.0,
        "avg_ingress_rate": 0.0,
        "delta": [
            "delta",
            16384,
            57,
            0,
            98304
        ],
        "len": 61,
        "mode": "default",
        "next_seq_id": 98304,
        "q1": 0,
        "q2": 0,
        "q3": 3,
        "q4": 1,
        "target_ram_count": "infinity"
    },
    "consumer_utilisation": null,
    "consumers": 0,
    "deliveries": [],
    "durable": true,
    "effective_policy_definition": {},
    "exclusive": false,
    "exclusive_consumer_tag": null,
    "garbage_collection": {
        "fullsweep_after": 65535,
        "max_heap_size": 0,
        "min_bin_vheap_size": 46422,
        "min_heap_size": 233,
        "minor_gcs": 19
    },
    "head_message_timestamp": null,
    "idle_since": "2019-11-04 8:57:13",
    "incoming": [],
    "memory": 30772,
    "message_bytes": 20576,
    "message_bytes_paged_out": 0,
    "message_bytes_persistent": 20576,
    "message_bytes_ram": 1247,
    "message_bytes_ready": 20576,
    "message_bytes_unacknowledged": 0,
    "messages": 61,
    "messages_details": {
        "rate": 0.0
    },
    "messages_paged_out": 0,
    "messages_persistent": 61,
    "messages_ram": 4,
    "messages_ready": 61,
    "messages_ready_details": {
        "rate": 0.0
    },
    "messages_ready_ram": 4,
    "messages_unacknowledged": 0,
    "messages_unacknowledged_details": {
        "rate": 0.0
    },
    "messages_unacknowledged_ram": 0,
    "name": "SyncData.5c8f2d5c806f0b43fc4a7a5c",
    "node": "rabbit@rabbit",
    "operator_policy": null,
    "policy": null,
    "recoverable_slaves": null,
    "reductions": 107151,
    "reductions_details": {
        "rate": 0.0
    },
    "single_active_consumer_tag": null,
    "state": "running",
    "type": "classic",
    "vhost": "/"
}
View Code

 

其中Ready和Unacked的消息如下

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM