I have got several messages on error queue which has name TestQueue_errors
.
One of the messages on error queue is important and should be moved back to service queue TestQueue
so it can be processed again. The other messages on error queue are broken and should stay on error queue.
I have tried to do that with shovel plugin but it seems it is able only to move all messages from one queue to another. Is there a way I could achieve that, to move single message from one queue to another?
Shovel is a plugin for RabbitMQ that enables you to define replication relationships between brokers. It can for example be used to balance the load of a queue or when you need to be able to take messages out of one RabbitMQ broker, and insert them into another.
Number of queues Queues are single-threaded in RabbitMQ, and one queue can handle up to about 50 thousand messages.
As all current RabbitMQ queue types have destructive consume behaviour, i.e. messages are deleted from the queue when a consumer is finished with them, it is not possible to re-read messages that have been consumed. Streams will allow consumers to attach at any point in the log and read from there.
As far as I know Rabbit Management does not allow to do it. The only thing you can do is to publish this message again.
Maybe there are some tools which give possibility to achieve it but it is not a standard behaviour.
Here are actions which you are able to perform on the queue (from RabbitMQ Management page):
Get all messages without requeue option (they would not be in the queue anymore)
Get first N messages without requeue option and then move the rest of messages to another queue
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With