Retry Behavior Overview
Boto3’s Standard retry mode includes the following mechanisms:-
Maximum Retry Attempts: Default value set to 3, configurable via the
--aws-retries-max-attempts 5
argument. -
Expanded Error Handling: Retries occur for a comprehensive set of errors.
- Nondescriptive Transient Error Codes: The retrier applies retry logic to standard HTTP status codes signaling transient errors: 500, 502, 503, 504.
- Exponential Backoff Strategy: Each retry attempt follows exponential backoff with a base factor of 2, ensuring progressive delay between retries. Maximum backoff time: 20 seconds
Validating Retry Attempts
For testing or modifying Prowler’s behavior, use the following steps to confirm whether requests are being retried or abandoned:- Run prowler with
--log-level DEBUG
and--log-file debuglogs.txt
- Search for retry attempts using
grep -i 'Retry needed' debuglogs.txt
grep -i 'Sending http request' debuglogs.txt | wc -l