Amazon SQS how to control the number of retries

fguillen picture fguillen · Feb 9, 2017 · Viewed 11.9k times · Source

I am configuring a beanstalk worker environment to deal with periodic tasks

When the requested URL is not responding with status 200 Elastic Beanstalk will put the task again in the queue.

How can I configure the number or retries?

I know the explanation is somewhere hidden behind ErrorVisibilityTimeout, InactivityTimeout, Dead Letter Queues... but these concepts are still not growing green in my inefficient mind.

For example I just want to configure maximum number of retries 0 so there is try but not any retry.

Answer

Mark B picture Mark B · Feb 9, 2017

Enable Dead Letter Queues, and set the DLQ Maximum Receives value to 1. This means that a message can only be received (and not deleted) one time before it is sent to the Dead Letter Queue.

Update, adding screenshots

This field is found into the beanstalk environment admin into Configuration > Worker Configuration > Advanced Options:

enter image description here

Or into the the SQS Queue admin into Queue Actions > Configure Queue:

enter image description here

Changing the value in one place will propagate the change to the other place.