awslabs / aws-api-gateway-developer-portal

A Serverless Developer Portal for easily publishing and cataloging APIs
Apache License 2.0
928 stars 402 forks source link

Unable to View Api list under Admin Panel in the developer portal #502

Open skakkunoori opened 3 years ago

skakkunoori commented 3 years ago

Hi team,

we have deployed the aws-api-gateway-developer-portal using master branch. The welcome page loaded without any issue. But when trying to view the list Api's available in APIs tab under Admin Console, we are seeing api calls are failing with 500 internal server error.

GET https://**API_ID**.execute-api.us-east-1.amazonaws.com/prod/admin/catalog/visibility?end=undefined&sdkType=undefined&start=undefined 500

when we reviewed the api gateway logs, the gateway is making a call to lambda function and in the lambda execution logs we found below error.

Error: 2021-08-23T07:36:19.063Z 738de20b-d084-443c-8d6a-460f74d68ee4 INFO GET /admin/catalog/visibility for Cognito ID: us-east-1:xxxx-93c4-4b6c-a399-xxxxxx 2021-08-23T07:36:20.815Z 738de20b-d084-443c-8d6a-460f74d68ee4 ERROR error: TooManyRequestsException: Too Many Requests at Object.extractError (/var/runtime/node_modules/aws-sdk/lib/protocol/json.js:52:27) at Request.extractError (/var/runtime/node_modules/aws-sdk/lib/protocol/rest_json.js:55:8) at Request.callListeners (/var/runtime/node_modules/aws-sdk/lib/sequential_executor.js:106:20) at Request.emit (/var/runtime/node_modules/aws-sdk/lib/sequential_executor.js:78:10) at Request.emit (/var/runtime/node_modules/aws-sdk/lib/request.js:688:14) at Request.transition (/var/runtime/node_modules/aws-sdk/lib/request.js:22:10) at AcceptorStateMachine.runTo (/var/runtime/node_modules/aws-sdk/lib/state_machine.js:14:12) at /var/runtime/node_modules/aws-sdk/lib/state_machine.js:26:10 at Request. (/var/runtime/node_modules/aws-sdk/lib/request.js:38:9) at Request. (/var/runtime/node_modules/aws-sdk/lib/request.js:690:12)

gsdwait commented 2 years ago

I think this is an issue when you have a lot of APIs or Usage Plans. We're seeing the same problem. I was able to increase the retry count and extend the base delay. That seemed to address the "too many requests" error but then the lambda timed out and once I got past that I ran into another socket timeout. Haven't chased that down yet.