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": "/"
}

其中Ready和Unacked的消息如下

RabbitMQ Management API调用的更多相关文章

  1. 通过nginx转发rabbitmq访问手动添加队列的时候报错:Management API returned status code 405

    原因: 正常访问该地址:https://xxx.xxx.com/rabbitmq/ 时能正常跳转,但是 rabbitmq management 的 API url 出现了 %2f 字符,这些字符会在经 ...

  2. rabbitmq management advance lesson

    rabbitmq management advance management install rabbitmq-plugins enable rabbitmq_management visit : h ...

  3. RabbitMQ Management HTTP API--官方文档

    Introduction Apart from this help page, all URIs will serve only resources of type application/json, ...

  4. Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用

    概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST API,就能够很容易地构建一个增删查改应用.这个应用始终遗留了一个问题,Web App在访问REST AP ...

  5. 信鸽推送 .NET (C#) 服务端 SDK rest api 调用库(v1.2)

    信鸽推送 .NET  服务端 SDK rest api 调用库-介绍 该版本是基于信鸽推送v2版本的时候封装的,先拿出来与大家分享,封装还还凑合,不依赖其他http调用件,唯一依赖json序列化dll ...

  6. JVM Management API

    JVM本身提供了一组管理的API,通过该API,我们可以获取得到JVM内部主要运行信息,包括内存各代的数据.JVM当前所有线程及其栈相关信 息等等.各种JDK自带的剖析工具,包括jps.jstack. ...

  7. xmlrpc实现bugzilla api调用(无会话保持功能,单一接口请求)

    xmlrpc实现bugzilla4   xmlrpc api调用(无会话保持功能,单一接口请求),如需会话保持,请参考我的另外一篇随笔(bugzilla4的xmlrpc接口api调用实现分享: xml ...

  8. FormatMessage与GetLastError配合使用,排查windows api调用过程中的错误

    前一段时间在学习windows api调用过程中,遇到过一些调用错误或者程序没能显示预期的结果,或者直接出现vc运行时错误. 这对新手来说是司空见惯的事,因为不太熟悉难免会出错,出错的信息如果能显示很 ...

  9. Jboss EAP:native management API学习

    上一节已经学习了CLI命令行来控制JBOSS,如果想在程序中以编码方式来控制JBOSS,可以参考下面的代码,实际上在前面的文章,用代码控制Jboss上的DataSource,已经有所接触了,API与C ...

随机推荐

  1. linq 书籍推荐 博客汇总 (经典)

    1.博客推荐 博客园linq专区 https://kb.cnblogs.com/zt/linq/ LINQ体验系列文章导航 https://www.cnblogs.com/lyj/archive/20 ...

  2. python 笔记一

    1. is 和 ==区别 is 判断是否是一个ID(内存中的数据是否是同一个), == 判断内容是否一致. 2.python 常量池包括 1.短整型的-5~256 2.字符串的数字.大小写字母随意组合 ...

  3. springboot使用过滤器Filter

    先创建过滤器配置类: ## 引入的包部分省略... @Configuration public class FilterConfig { @SuppressWarnings({"rawtyp ...

  4. vim小结

    1.工作模式 命令模式 编辑模式 一般模式 2.配置文件 :set nu  /  :set nonu 显示与取消行号 :syntax on  /  :syntax off 是否依据语法显示相关的颜色帮 ...

  5. QT5无法定位程序输入点 于动态链接库QtCore5.dll的解决

    本人新手刚接触QT5,今天在写程序时,在QtCreator中可以运行,但是单独运行.exe文件时报错 之后发现是因为我之前在path路径中添加了MinGw,导致里面也有Qt库.但是我编译的时候用的是安 ...

  6. [转]Python测试框架对比----unittest, pytest, nose, robot framework对比

      测试框架 什么是框架? 框架(Framework)是整个或部分系统的可重用设计,框架是用来解决代码的组织及运行控制问题的. 在我们编写自动化脚本的时候,经常需要读取配置文件,读取数据文件,发送请求 ...

  7. 开发指南~小程序代码构成~JSON配置

    2.1 JSON 配置 JSON 是一种数据格式,并不是编程语言,在小程序中,JSON扮演的静态配置的角色. 2.1.1 一个例子 ​先看一个例子,打开开发工具的编辑器,在根目录下可以找到 app.j ...

  8. 1211 BBS后台管理文章添加

    目录 昨日内容回顾 侧边栏inclusion_tag inclusion_tag的响应 使用 自定义inclusion_tag,标签,过滤器 文章的点赞点踩 前端 后端 校验规则 文章的评论功能 1. ...

  9. DT6.0下搜索页解决canonical获取乱码问题

    最近研究dt6.0,官方内核默认是把搜索页屏蔽的,但是做seo的人都知道,搜索页聚合是争取排名的好地方,所以我就二次开发搜索页,具体可以查看前几期分享的,今天说说关于搜索的canonical的url乱 ...

  10. pandas数据类型(二)与numpy的str和object类型之间的区别

    现象: Numpy区分了str和object类型,其中dtype(‘S’)和dtype(‘O’)分别对应于str和object. 然而,pandas缺乏这种区别 str和object类型都对应dtyp ...