不能使用rabbitmqadmin声明死信交换

时间:2012-07-06 13:49:19

标签: rabbitmq

我正在尝试通过调用rabbitmqadmin的脚本在RabbitMQ中设置各种交换和队列。虽然我可以声明一个队列,但我无法找到任何方式在声明中发送'x-dead-letter-exchange'或'x-dead-letter-routing-key'参数。这可能吗?

2 个答案:

答案 0 :(得分:8)

是的,可以通过在'arguments'参数中指定JSON来实现:

call rabbitmqadmin.py declare queue name=MyQueue arguments={\"x-dead-letter-exchange\":\"MyExchange\",\"x-dead-letter-routing-key\":\"MyRoutingKey\"}

注意:这是从Windows批处理文件除外。 (在其他操作系统上,某些语法可能不同)

答案 1 :(得分:2)

对于那些感兴趣的人,解决方案是做'rabbitmqadmin export rabbit.config',更改文件以包含必要的交换,队列和绑定,然后'rabbitmqadmin import rabbit.config'。不是最佳解决方案,但功能齐全。