1

我正在使用 EasyNetQ.ManagementClient nuget 包来获取有关兔子的一些统计信息。在 Web 管理中,您可以看到每个队列的味精率在此处输入图像描述

但是在使用 EasyNetQ.ManagementClient 时,我无法仅针对代码中的队列获得相同的费率,是否有可能获得它们?

var managementClient = new ManagementClient("http://ipadress", "guest", "guest");
var overview = managementClient.GetOverview();
var publishRate = overview.MessageStats.PublishDetails.Rate; // this is for all queues together
var queues = managementClient.GetQueues();
foreach (var q in queues)
{ 
  // q doesn't have any rates properties
}

提前致谢

4

2 回答 2

1

我还没有弄清楚这一点,但是EasyNetQ.ManagementClient我使用 nuget 包对 rabbit 的 api 进行了 Web 请求,http://ipadress:15672/api/queues并返回 JSON 以响应我需要的所有信息。

于 2015-05-15T05:56:10.130 回答
0

当你问这个问题时,它可能不存在于 API 中,但是EasyNetQ.Management.Client你现在可以查询每个队列的统计信息:

...
foreach (var q in queues)
{ 
  Console.WriteLine($"Rate for {q.Name} is {q.MessagesDetails.Rate}");
}
于 2018-04-23T07:13:31.127 回答