如何检测队列消息的来源?

时间:2013-06-23 12:01:19

标签: ruby rabbitmq amqp

我想知道哪些发布者发布了一个到达RabbitMQ中特定队列的消息。 我知道什么交换转发消息到队列,但在我的交换中有许多发布者,只有少数发送消息与路由密钥进入此队列。

有办法吗?

由于

1 个答案:

答案 0 :(得分:1)

RabbitMQ spec中没有包含邮件原始发布者的任何内容。我开始让所有发布者都包含X-个元数据标题,我可能会将其用于会计目的。事情一般值得包括:

  • X-Publishing-Host - 框的主机名
  • X-Publishing-Server - 服务发布名称
  • X-Publishing-Time - 发布的纪元时间戳

有了这些,您的消费者可以开始了解更多的事情。我包括时间,以便我对发布和处理消息之间的延迟有所了解。如果您也可以,请包含正在发布的软件版本,尽管您可能会对timstamp足够接近。