SQS メッセージの Redrive (デッドレター再処理)
デッドレターキューからメッセージを受信し、元のキューに送信することで再処理をおこなうツールです。
メッセージを受信・削除しながらおこなうため、実行には注意が必要です。別々におこなう方法は、こちらを参照。
制限
- メッセージ本文と、FIFO キューの場合は MessageGroupId が維持されます。その他は未対応です。
HOWTO
-
以下のスクリプトを用意する。
-
AWS SDK for Python (boto3) をインストールする。
pip install boto3
-
以下のコマンドを実行する。
aws-sqs-redrive.py --delete \
--src-queue-name (受信元 SQS キュー名) \
--dst-queue-name (送信先 SQS キュー名)--delete
をつけないと元のキューにメッセージが残ります。