TL; DR: Мне нужно "переигрывать" сообщения мертвой буквы обратно в свои исходные очереди, как только я исправил код пользователя, изначально вызывающий отклонение сообщений.
Я настроил Dead Letter Exchange (DLX) для RabbitMQ и успешно маршрутизировал отклоненные сообщения в очередь с мертвой буквой. Но теперь я хочу посмотреть сообщения в очереди с мертвой буквой и попытаться решить, что делать с каждым из них. Некоторые (многие?) Из этих сообщений должны быть воспроизведены (запрошены) в их исходные очереди (доступны в заголовках "x-death" ) после исправления кода нарушителя. Но как я вообще это делаю? Должен ли я писать одноразовую программу, которая читает сообщения из очереди с мертвой буквой и позволяет мне указать целевую очередь для их отправки? А как насчет поиска в очереди мертвых букв? Что, если я знаю, что сообщение (пусть говорят, которое закодировано в JSON) имеет определенный атрибут, который я хочу искать и воспроизводить? Например, я исправляю дефект, который, как я знаю, позволит успешно обрабатывать сообщение с PacketId: 1234. Я мог бы написать одноразовую программу для этого, я полагаю.
Я, конечно, не могу быть первым, кто столкнулся с этими проблемами, и мне интересно, разрешил ли кто-нибудь еще их. Кажется, для такого рода должен быть какой-то швейцарский армейский нож. Я сделал довольно обширный поиск в Google и Stack Overflow, но на самом деле не очень много. Самое близкое, что я мог найти, это лопаты, но это действительно не похоже на правильный инструмент для этой работы.