If your AWS account has many secrets in SSM, the validate secrets procedure will fail with a Throttled Exception from AWS; this is because the AWS provider is calling ssm.describeParameters for all the parameters in the account, without any filter, and after about 20 page requests it starts being throttled by AWS.
Possible solutions:
When validating secrets, instead of listing all the secrets in the account, go lookup each secret wanted by the app.
Add throttling or retry behaviour to the AWS calls, so if the rate limit is hit the calls will retry.
In the meantime, we've had to disable validation of secrets.
ThrottlingException: Rate exceeded
at Request.extractError (/Users/jag/dev/trading-stream-consumer/node_modules/aws-sdk/lib/protocol/json.js:48:27)
at Request.callListeners (/Users/jag/dev/trading-stream-consumer/node_modules/aws-sdk/lib/sequential_executor.js:109:20)
at Request.emit (/Users/jag/dev/trading-stream-consumer/node_modules/aws-sdk/lib/sequential_executor.js:81:10)
If your AWS account has many secrets in SSM, the validate secrets procedure will fail with a Throttled Exception from AWS; this is because the AWS provider is calling
ssm.describeParameters
for all the parameters in the account, without any filter, and after about 20 page requests it starts being throttled by AWS.Possible solutions:
In the meantime, we've had to disable validation of secrets.