コンテンツにスキップ

SQS メッセージの Redrive (デッドレター再処理)

デッドレターキューからメッセージを受信し、元のキューに送信することで再処理をおこなうツールです。

メッセージを受信・削除しながらおこなうため、実行には注意が必要です。別々におこなう方法は、こちらを参照。

制限

  • メッセージ本文と、FIFO キューの場合は MessageGroupId が維持されます。その他は未対応です。

HOWTO

  1. 以下のスクリプトを用意する。

    - aws-sqs-redrive.py

  2. AWS SDK for Python (boto3) をインストールする。

    shell pip install boto3

  3. 以下のコマンドを実行する。

    bash aws-sqs-redrive.py --delete \ --src-queue-name (受信元 SQS キュー名) \ --dst-queue-name (送信先 SQS キュー名)

    --delete をつけないと元のキューにメッセージが残ります。