C# 获取RabbitMQ消息速率

C# 获取RabbitMQ消息速率,c#,rabbitmq,C#,Rabbitmq,我正在尝试连接到现有的rabbit mq并获取其汇率(或其汇率)。我是否需要自己计算费率,还是有更简单的方法 提前感谢。您可以启用RabbitMQ发行版中包含的: rabbitmq-plugins enable rabbitmq_management 然后您可以访问http://server-name:15672/在这里,您可以找到消息速率以及其他有用的信息,如已建立的队列/交换、它们的活动、vhost等 数据也可通过REST API在http://server-name:15672/api/

我正在尝试连接到现有的rabbit mq并获取其汇率(或其汇率)。我是否需要自己计算费率,还是有更简单的方法

提前感谢。

您可以启用RabbitMQ发行版中包含的:

rabbitmq-plugins enable rabbitmq_management
然后您可以访问
http://server-name:15672/
在这里,您可以找到消息速率以及其他有用的信息,如已建立的队列/交换、它们的活动、vhost等

数据也可通过REST API在
http://server-name:15672/api/
。插件激活时启用默认来宾用户的基本身份验证(应更改用户)

例如,要获取具有入站/出站消息速率的已建立交换机列表(按出站速率降序排列),您可以发出以下get请求:

以以下格式返回数据:

[
  {
    "message_stats": {
      "publish_in_details": {
        "rate": 1.4
      },
      "publish_out_details": {
        "rate": 5
      }
    },
    "name": "some.exchange"
  },
  ...
]
您还可以获得特定时间范围的平均值。例如,这: 将返回最后一小时的队列消息速率数据,每分钟一个样本(将使用平均值扩展
message_stats
属性)

查看更多关于
消息\u stats
\u详细信息的信息

我是这样使用的:

curl -i -u user:pass 'http://server_ip:server_port/api/queues?sort=message_stats.publish_details.rate&sort_reverse=true&columns=name,message_stats.publish_details.rate,message_stats.deliver_get_details.rate,messages,messages_ready,memory,state'

你说的费率是什么意思?每秒传入/传出的消息,然后检查我的答案,它已经在那里了。我不确定管理插件是否已经启用。有办法检查吗?另外,你能详细说明我如何访问web吗?如果不清楚,我希望获得我自己的winforms GUI的费率。谢谢。您可以通过SSH连接到RabbitMQ服务器,然后运行
sudo RabbitMQ插件列表| grep RabbitMQ_管理
。你应该看到一个管理插件列表,其中E*或E*在尖括号中(如果已启用)。此外,如果你计划在自己的应用程序中使用此信息,那么你应该使用REST API。如果启用了,我将使用示例OK编辑帖子。你能举一个如何上网和排队率的例子吗。对不起挤牛奶。谢谢。我用一个例子编辑了这篇文章,说明了如何调用API来获取给定汇率的汇率。有关更多信息,请参阅API文档