[rabbitmq-discuss] rabbitmq-shovel issues [for hyperthunk]

Matthias Radestock matthias at rabbitmq.com
Thu May 30 21:58:25 BST 2013

On 30/05/13 21:35, john.hayden at nokia.com wrote:
> I have 2 Rabbits running on 2 different ec2 instances in AWS
> Rabbit1 has had a Shovel plugin installed in order to send messages to
> Rabbit2
> These Rabbits are being used for a Sensu monitoring network
> The Sensu server is in the same region as Rabbit1
> When a message is sent by Sensu to Rabbit1 it fansout to all connected
> queues (maybe the wrong terminology here), including one called us-west-2
> The Shovel is supposed to pick up messages from us-west-2 and forward it
> to Rabbit2
> Later on I will add other queues to forward to other Rabbits
> As I try this setup, I seem to timeout on a connection and I don't know why.
> Here is a gist of what is going on: https://gist.github.com/jhhayden/5679708

Have you checked the obvious, i.e. whether the Rabbit1 machine can 
connect to both endpoints? In particular, on Rabbit1 run

telnet 5672

and then type AMQPxx<return>

This should reply with 'AMQP<somestuff>' and close the connection.

Then try the same for the other connection, i.e. 'telnet 

Also, it's worth checking the rabbit logs on both brokers for connection 
attempts and errors.

A few other points...

- you say that the shovel is running on rabbit1 and shovelling to 
rabbit2. That means it would be better to use a direct connection to 
rabbit1 instead of a network connection. From 
http://www.rabbitmq.com/shovel.html#configuration "If the [URI] host is 
omitted [...] the shovel uses a direct connection to the broker in which 
it is running. This avoids using the network stack.". In addition to 
better performance, direct connections are not affected by network 
issues, which should make it easier to debug the problem you are seeing.

- there's no need to specify the port 5672 in the URI since that is the 



More information about the rabbitmq-discuss mailing list