RabbitMQ配置动态铲错误 - '未找到组件铲'

时间:2014-07-30 11:00:16

标签: rabbitmq rabbitmq-shovel

我在安装Shovel插件后尝试在RabbitMQ 3.2.3上配置动态铲。但是,当我运行以下命令时:

rabbitmqctl set_parameter shovel test-shovel '{"src-uri": "amqp://", "src-queue": "queueName", "dest-uri": "amqp://user:password@host", "dest-queue": "queueName"}'

...我收到此错误消息:

Error: Validation failed

component shovel not found


插件似乎安装正确。如果我跑:

rabbitmq-plugins list

......我明白了:

[e] amqp_client                       3.2.3
[ ] cowboy                            0.5.0-rmq3.2.3-git4b93c2d
[ ] eldap                             3.2.3-gite309de4
[e] mochiweb                          2.7.0-rmq3.2.3-git680dba8
[ ] rabbitmq_amqp1_0                  3.2.3
[ ] rabbitmq_auth_backend_ldap        3.2.3
[ ] rabbitmq_auth_mechanism_ssl       3.2.3
[ ] rabbitmq_consistent_hash_exchange 3.2.3
[ ] rabbitmq_federation               3.2.3
[ ] rabbitmq_federation_management    3.2.3
[ ] rabbitmq_jsonrpc                  3.2.3
[ ] rabbitmq_jsonrpc_channel          3.2.3
[ ] rabbitmq_jsonrpc_channel_examples 3.2.3
[E] rabbitmq_management               3.2.3
[e] rabbitmq_management_agent         3.2.3
[ ] rabbitmq_management_visualiser    3.2.3
[ ] rabbitmq_mqtt                     3.2.3
[E] rabbitmq_shovel                   3.2.3
[E] rabbitmq_shovel_management        3.2.3
[ ] rabbitmq_stomp                    3.2.3
[ ] rabbitmq_tracing                  3.2.3
[e] rabbitmq_web_dispatch             3.2.3
[ ] rabbitmq_web_stomp                3.2.3
[ ] rabbitmq_web_stomp_examples       3.2.3
[ ] rfc4627_jsonrpc                   3.2.3-git5e67120
[ ] sockjs                            0.3.4-rmq3.2.3-git3132eb9
[e] webmachine                        1.10.3-rmq3.2.3-gite9359c7


另外,如果我跑:

rabbitmqctl eval 'rabbit_shovel_status:status().'

......我明白了:

[]
...done.


有任何想法吗?!提前谢谢!

3 个答案:

答案 0 :(得分:4)

在3.3.0中添加了动态铲子,doh!我们仍然在3.2.3。

http://www.rabbitmq.com/release-notes/README-3.3.0.txt

答案 1 :(得分:1)

确定, 通常,此行为是在您安装插件时,并且您不重新启动RabbitMQ服务器。

重启RMQ是强制性的。

答案 2 :(得分:0)

由于3.8.6之前的RMQ版本中的竞争条件,也可能发生这种情况。在3.8.6之前,加载静态定义可能在激活插件之前发生,从而导致此验证错误。有关更多信息,请参见GitHub第rabbitmq/rabbitmq-server#2384