【发布时间】:2018-11-02 21:42:38
【问题描述】:
出于故障排除的目的,我想获取向特定队列或交换器发送消息的生产者列表。我在 rabbitmq 控制台中没有看到任何选项来获取上述详细信息。一些生产者正在堆积一个特定的队列,我正在试图找出生产者在队列中堆积消息的 IP。
谁能指导我。
【问题讨论】:
标签: rabbitmq
出于故障排除的目的,我想获取向特定队列或交换器发送消息的生产者列表。我在 rabbitmq 控制台中没有看到任何选项来获取上述详细信息。一些生产者正在堆积一个特定的队列,我正在试图找出生产者在队列中堆积消息的 IP。
谁能指导我。
【问题讨论】:
标签: rabbitmq
默认情况下您没有此信息,但您可以使用邮件标题来执行此操作。
例如:
string message = "Hello World!";
var body = Encoding.UTF8.GetBytes(message);
var properties = new BasicProperties();
properties.Headers = new Dictionary<string, object>();
properties.Headers.Add("senderip", InetAddress.getLocalHost().getHostAddress());
properties.Headers.Add("custominfo", "info" );
channel.BasicPublish(exchange: "", routingKey: "mykey", basicProperties: properties,body: body);
当您收到消息时,您可以对标头进行解码
【讨论】: