Java 如何在兔子消息';这是死信
我有一个兔子队列,里面有消费信息。我还有一个可能失败的倾听者。队列配置为死信交换(以及死信队列)。我想要的是在死信队列中的消息中看到异常信息 以下是它目前的工作原理:Java 如何在兔子消息';这是死信,java,rabbitmq,spring-amqp,spring-rabbit,rabbitmq-exchange,Java,Rabbitmq,Spring Amqp,Spring Rabbit,Rabbitmq Exchange,我有一个兔子队列,里面有消费信息。我还有一个可能失败的倾听者。队列配置为死信交换(以及死信队列)。我想要的是在死信队列中的消息中看到异常信息 以下是它目前的工作原理: 我将损坏的消息发送到我的正常队列 我的监听器(我正在使用Java的org.springframework.amqp.core.MessageListener)失败,出现类似“Java.lang.RuntimeException:损坏的消息”这样的错误 消息被拒绝,并通过死信交换进入死信队列 当我在Rabbit Admin UI中查
x-死亡:
理由:拒绝
请参阅。这也是我使用的模式。我喜欢将basic.reject和/或未能发送basic.ack视为消费者崩溃或出现与消息或任何下游内容无关的其他问题的迹象。在这种情况下,代理可以原封不动地重新获取消息,并允许另一个使用者立即获取消息。如果使用者进程足够健康,可以将合理的信息写入消息头,那么它还可以将其重新发布到“无法传递”或“重试”exchange,并对原始消息进行basic.ack。