使用RabbitMQ管理(v3),我尝试创建一个队列,该队列将向默认交换发送死信消息,并在该队列上绑定一个路由键"MyErrorRoutingKey“。所以在管理界面上,我留下了“死信交换”的空白。
我只是想知道在尝试创建队列时使用以下消息是否正常:
406 PRECONDITION_FAILED -无效的arg‘x-死-字母路由-密钥’队列'MyQueue‘在vhost '/':routing_key_but_no_dlx_defined
将死信消息路由到默认交换似乎是可能的,因为在文档中有这样的说法:
这是有可能形成一个循环的死信队列。例如,当队列中的死信消息发送到默认交换时,而不指定死信路由密钥时,就会发生这种情况。这些循环中的消息(即到达同一队列两次的消息)将被删除。
那么,我应该如何将消息路由到默认交换呢?与上面描述的“循环无用的死信”不同,我希望能够指定路由密钥,这样我的消息就不会丢失。
发布于 2014-04-17 22:32:22
老问题,但似乎没有人回答,所以我试试看。
我在使用web UI时遇到了完全相同的错误,但我能够绕过它,手动将“x死信交换”和“x死信路由键”设置为自定义参数,而不是使用提供的字段。

https://stackoverflow.com/questions/14141974
复制相似问题