When I work with items in Amazon DynamoDB, I get an error similar to the following: "Internal server error (Service: AmazonDynamoDBv2; Status Code: 500; Error Code: InternalServerError".
Resolution
If DynamoDB can't process an API call in a reasonable time frame, then you might receive an HTTP 5xx status code.
During a monthly billing cycle, DynamoDB has a Service Level Agreement (SLA) of 99.999% for global tables and 99.99% for standard. A system errors percentage that's less than .01% for a specific time period is normal, and you don't need to contact AWS Support.
Use the SystemErrors Amazon CloudWatch metric to get the number of requests that return the 5xx status code. To determine the system error percentage, divide the number of requests that generate a 5xx status code by the sample count of SuccessfulRequestLatency for the same time period. Then, multiply the number by 100.
If the increase in errors is greater than .01, then complete the following tasks:
If you continue to get a 5xx status code, then use AWS Health Dashboard to check if there are any operational issues with the service.
Related information
Exponential backoff and jitter
DynamoDB metrics and dimensions