- Newest
- Most votes
- Most comments
"Rate exceeded" is one of the possible throttling errors where your API request rate has exceeded a limit. The standard way to handle this is to retry with exponential backoff. AWS SDKs handle some of this for you, retrying API calls rejected due to throttling and retrying with exponential backoff up to a retry limit. The Python Boto3 SDK for example allows you to configure the retry mode & number of retries, but I'm not familiar with the NodeJS one.
Unfortunately documentation about throttling across different APIs is a bit patchy, as is coverage of throttling activity by CloudWatch Metrics. I confirmed all this through AWS Support recently, and it was a bit disappointing. You may be able to get some visibility via "ThrottleCount" and "RequestLimitExceeded" metrics in Cloudwatch but
-
Support confirmed that not all services that have API throttling generate these (yet).
-
I think only metrics that have generated data (i.e. a throttling event has happened) appear here, from what I've seen, so there's no way to inventory what ones can occur.
-
Until I got the EC2/API metric enabled by requesting Support, EC2 API throttling wasn't visible in Cloudwatch Metrics. Support said there's no similar situation for other APIs.
Relevant content
- asked 2 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 3 months ago
- AWS OFFICIALUpdated 3 years ago