$ cat sqs-dlq.json
{
"DelaySeconds":"10",
"MessageRetentionPeriod":"1209600",
"ReceiveMessageWaitTimeSeconds":"20",
"VisibilityTimeout":"30"
}
$ aws sqs create-queue --queue-name DeadLetterQueue1 --attributes file://sqs-dlq.json
{
"QueueUrl": "https://ap-northeast-1.queue.amazonaws.com/<ユーザーID>/DeadLetterQueue1"
}
- Dead Letter キューの ARN を確認する
$ aws sqs get-queue-attributes --attribute-names QueueArn --queue-url https://ap-northeast-1.queue.amazonaws.com/<ユーザーID>/DeadLetterQueue1
{
"Attributes": {
"QueueArn": "arn:aws:sqs:ap-northeast-1:<ユーザーID>:DeadLetterQueue1"
}
}
$ cat sqs-queue.json
{
"DelaySeconds":"10",
"MessageRetentionPeriod":"1209600",
"ReceiveMessageWaitTimeSeconds":"20",
"VisibilityTimeout":"30",
"RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:ap-northeast-1:<ユーザーID>:DeadLetterQueue1\",\"maxReceiveCount\":\"1000\"}"
}
$ aws sqs create-queue --queue-name Queue1 --attributes file://sqs-queue.json
{
"QueueUrl": "https://ap-northeast-1.queue.amazonaws.com/<ユーザーID>/Queue1"
}
$ for i in {1..1000}
do
aws sqs send-message --queue-url "https://ap-northeast-1.queue.amazonaws.com/<ユーザーID>/Queue1" --message-body "Test Message $i"
done > sqs_send1000.log
$ aws sqs get-queue-attributes --attribute-names ApproximateNumberOfMessages --queue-url https://ap-northeast-1.queue.amazonaws.com/<ユーザーID>/Queue1
{
"Attributes": {
"ApproximateNumberOfMessages": "1000"
}
}
$ aws sqs receive-message --max-number-of-messages 10 --queue-url https://ap-northeast-1.queue.amazonaws.com/<ユーザーID>/Queue1 --visibility-timeout 60 --wait-time-seconds 20
{
"Messages": [
{
"Body": "Test Message 33",
"ReceiptHandle": "AQEBtIprTOVjUxOU06ebxCxVW3eWJ1QLlhAcptnne1OfyiH0Oh7dikEJ0cJgRAoFg1MrUUMGGbD93AZHozrW6lW5kLUfb83VT82u/kBL5aEyxVPTee/m5Y58a+4fgsd2b2igXTGCoGJGqsROODKB7hKwmza4s9jmrlMRCZqBdrlMywVO4WYkHuyiiKT4myvYkLaztx1vszRl/YtEejb0ZzVq96045zpGojTMF7UvGlpXdm4WbCbFdgAoCXi8zw2b/e/SkAjxB/iZyXzP2PSrlMoMDFQ2pEaW5f0HL2yvUGxJTrH2fbqcceRqE6O65UHHnwZOavVZHQimDj2osu1Loom043JLNNYXCTsPL/vfdPkhilpQRXRaSUnAHquzk1vL5RlI4Zr8+Da4kBHIcUHmpOZyjQ==",
"MD5OfBody": "5ba0f9d4c06aeabf176b026ea0bd2301",
"MessageId": "2572874c-2459-47b8-b81e-1c79211563b4"
},
(中略)
{
"Body": "Test Message 96",
"ReceiptHandle": "AQEBHWroUeQWg5Sm7Civr7YB3/jl1JYtF+AXIaUSVqJd8wWfkOgeBbzYNOl7rU+RbtTYqejVRdRvvmtN8WFF2pSw+c7khfG1v4uJCXsx30nRYv5eQ6n1vtWzXV62G93phCXH6IrIPOYRkbqSgVDjO3ReGfCcaskPn9roXwyevwg3Uq0sUYTeJBFhQJoLV8jKZWBR3VVGFBT+1WUlL0k2BfA8slfQCcb7tjsnEbITdMORgAf1UT80pUAaEpsKXgG2Y1kNtOigKB4Rzynwe6IIiT1Eu+efUHNLZQSHXkxywIYvAccBbMZ84p6G5WxKDZAdZZk1bh41ngXapfsrDeKxQ0JxVSroL0qrIf5QYvtSCFWemDA1vCyUBfrzV15BAce3EVeEZA5oUM4HbbV7kvOkkYXqOw==",
"MD5OfBody": "405d70b218eabb65c9e3c31cfe98d66c",
"MessageId": "9ed2afb9-552f-499d-8ebd-9df904e7e202"
}
]
}
$ aws sqs purge-queue --queue-url "https://ap-northeast-1.queue.amazonaws.com/<ユーザーID>/Queue1"