Configuration 具有备用Exchange的RabbitMQ配置
我正在尝试使用声明列表为RabbitMQ配置Spoot插件。我已将远程exchange配置为在创建时具有备用exchange 我的问题是,我无法获取包含此参数的Solve配置文件,因此RabbitMQ在启动时崩溃 我的配置是这样的:Configuration 具有备用Exchange的RabbitMQ配置,configuration,rabbitmq,Configuration,Rabbitmq,我正在尝试使用声明列表为RabbitMQ配置Spoot插件。我已将远程exchange配置为在创建时具有备用exchange 我的问题是,我无法获取包含此参数的Solve配置文件,因此RabbitMQ在启动时崩溃 我的配置是这样的: [ {mnesia, [{dump_log_write_threshold, 100}]}, {rabbit, [{vm_memory_high_watermark, 0.4}]}, {rabbitmq_shovel, [{s
[
{mnesia, [{dump_log_write_threshold, 100}]},
{rabbit, [{vm_memory_high_watermark, 0.4}]},
{rabbitmq_shovel,
[{shovels,
[{call_stats_shovel,
[{sources, [{broker, "amqp://guest:guest@localhost:5672/test"},
{declarations,
[{'queue.declare', [{queue, <<"incoming">>}, durable]},
{'exchange.declare',[{exchange, <<"my-exchange-topic">>},{type, <<"topic">>},durable]},
{'queue.bind',[{exchange, <<"my-exchange-topic">>},{queue, <<"incoming">>}]}
]}]},
{destinations, [{broker, "amqp://guest:guest@172.16.3.162:5672/blah"},
{declarations,
[
{'queue.declare',[{queue, <<"billing">>},durable]},
{'exchange.declare',[{exchange, <<"my-exchange-topic">>},{type, <<"topic">>},{alternate_exchange, <<"alt">>}, durable]},
{'queue.bind',[{exchange, <<"my-exchange-topic">>},{queue, <<"billing">>},{routing_key, <<"physical">>}]}
]}
]},
{queue, <<"incoming">>},
{ack_mode, no_ack},
{publish_properties, [{delivery_mode, 2}]},
{reconnect_delay, 5}
]}
]
}]
}
].
[
{mnesia,[{dump_log_write_threshold,100}]},
{rabbit,[{vm_memory_high_watermark,0.4}]},
{Rabbituèu铲,
[{铲子,
[{打电话给统计局,
[{来源,[{经纪人,”amqp://guest:guest@localhost:5672/test“},
{声明,
[{'queue.declare',[{queue,},持久]},
{'exchange.declare',[{exchange,},{type,},持久]},
{'queue.bind',[{exchange,},{queue,}]}
]}]},
{目的地,[{代理,”amqp://guest:guest@172.16.3.162:5672/诸如此类,
{声明,
[
{'queue.declare',[{queue,},持久]},
{'exchange.declare',[{exchange,},{type,},{alternate_exchange,},持久]},
{'queue.bind',[{exchange,},{queue,},{routing_key,}]}
]}
]},
{队列,},
{ack_mode,no_ack},
{publish_properties,[{delivery_mode,2}]},
{重新连接延迟,5}
]}
]
}]
}
].
问题出在名为“我的exchange主题”的目标exchange上。如果我去掉声明部分,那么配置文件就可以工作了
这就是错误:
=信息报告===2012年7月31日::12:15:25===
应用:rabbitmq_铲
退出:{{无效的电铲配置,调用电铲状态,
{无效的参数值,目的地,
{未知_字段,'exchange.declare',
[alternate_exchange]}},
{兔子_铲,开始,[正常,[]}
类型:永久性
如果我将alternate_exchange部分保留在声明之外,则在RabbitMQ web管理中会出现以下错误:
{{关闭,
{服务器启动关闭,406,
}},
{gen_服务器,呼叫,
[,
{打电话,
{'exchange.declare',0,,,false,
真,假,假,假,[]},
没有,},
无限]}
对于了解如何配置需要附加参数的交换和队列的任何人,您可以这样做:
{'exchange.declare',[{exchange, <<"my-exchange-topic">>},{type, <<"topic">>}, durable, {arguments, [{<<"alternate-exchange">>, longstr, <<"alternate-exchange">>}]} ]},
{'exchange.declare',[{exchange,},{type,},持久,{arguments,[{,longstr,}]},
您可以对队列执行类似的操作:
{'queue.declare',[{queue, <<"my-queue">>},durable, {arguments, [{<<"x-dead-letter-exchange">>, longstr, <<"dead-letter-queue">>}]}]}
{'queue.declare',[{queue,},持久,{arguments,[{,longstr,}]}
对于了解如何配置需要附加参数的交换机和队列的人,您可以这样做:
{'exchange.declare',[{exchange, <<"my-exchange-topic">>},{type, <<"topic">>}, durable, {arguments, [{<<"alternate-exchange">>, longstr, <<"alternate-exchange">>}]} ]},
{'exchange.declare',[{exchange,},{type,},持久,{arguments,[{,longstr,}]},
您可以对队列执行类似的操作:
{'queue.declare',[{queue, <<"my-queue">>},durable, {arguments, [{<<"x-dead-letter-exchange">>, longstr, <<"dead-letter-queue">>}]}]}
{'queue.declare',[{queue,},持久,{arguments,[{,longstr,}]}
为了澄清上述评论,如果是exchange2exchange铲,配置为:
{'exchange.declare',[{exchange, <<"my-exchange-topic">>},{type, <<"topic">>}, durable, {arguments, [{<<"alternate-exchange">>, longstr, <<"name-of-your-alternate-exchange">>}]} ]},
{'exchange.declare',[{exchange,},{type,},持久,{arguments,[{,longstr,}]},
为了澄清上述评论,如果是exchange2exchange铲,配置为:
{'exchange.declare',[{exchange, <<"my-exchange-topic">>},{type, <<"topic">>}, durable, {arguments, [{<<"alternate-exchange">>, longstr, <<"name-of-your-alternate-exchange">>}]} ]},
{'exchange.declare',[{exchange,},{type,},持久,{arguments,[{,longstr,}]},