Пытаюсь настроить динамическую лопату на RabbitMQ 3.2.3 после установки плагина Shovel. Однако когда я запускаю следующую команду:

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
user3891135 30 Июл 2014 в 15:00
1
Вы перезапустили RMQ? после установки лопаты?
 – 
Gabriele Santomaggio
30 Июл 2014 в 16:00

3 ответа

Лучший ответ

Похоже, в 3.3.0 были добавлены динамические лопаты, да! Мы все еще на версии 3.2.3.

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

3
user3891135 5 Авг 2014 в 17:24
1
Это не совсем так. В моем случае есть RabbitMQ 3.3.5, плагин лопаты включен, и лопаты, созданные статически (через файл конфигурации), работают хорошо. Попытка определить конец динамической лопаты с ошибкой: Error: Validation failed component shovel not found
 – 
sempasha
21 Окт 2014 в 14:43

Хорошо, обычно такое поведение возникает, когда вы устанавливаете плагин и не перезапускаете сервер RabbitMQ.

Перезагрузка RMQ обязательна.

1
Gabriele Santomaggio 30 Июл 2014 в 17:21

Это также может произойти из-за состояния гонки в версиях RMQ до 3.8.6. До 3.8.6 загрузка статических определений могла происходить до активации подключаемых модулей, вызывая эту ошибку проверки. Для получения дополнительной информации см. Проблему GitHub rabbitmq / rabbitmq-server # 2384.

0
austin_ce 1 Сен 2020 в 00:44