Troubleshoot a Classic Load Balancer: Response code metrics
Your load balancer sends metrics to Amazon CloudWatch for the HTTP response codes sent to clients, identifying the source of the errors as either the load balancer or the registered instances. You can use the metrics returned by CloudWatch for your load balancer to troubleshoot issues. For more information, see CloudWatch metrics for your Classic Load Balancer.
The following are response code metrics returned by CloudWatch for your load balancer, the potential causes, and the steps you can take to resolve the issues.
Response Code Metrics
HTTPCode_ELB_4XX
Cause: A malformed or canceled request from the client.
Solutions
HTTPCode_ELB_5XX
Cause: Either the load balancer or the registered instance is causing the error or the load balancer is unable to parse the response.
Solutions
HTTPCode_Backend_2XX
Cause: A normal, successful response from the registered instances.
Solution: None.
HTTPCode_Backend_3XX
Cause: A redirect response sent from the registered instances.
Solution: View the access logs or the error logs on your instance to determine the cause. Send requests directly to the instance (bypassing the load balancer) to view the responses.
HTTPCode_Backend_4XX
Cause: A client error response sent from the registered instances.
Solution: View the access or error logs on your instances to determine the cause. Send requests directly to the instance (bypass the load balancer) to view the responses.
Note
If the client cancels an HTTP request that was initiated with a Transfer-Encoding: chunked
header, there is a known issue where the load balancer forwards the request to the instance
even though the client canceled the request. This can cause backend errors.
HTTPCode_Backend_5XX
Cause: A server error response sent from the registered instances.
Solution: View the access logs or the error logs on your instances to determine the cause. Send requests directly to the instance (bypass the load balancer) to view the responses.
Note
If the client cancels an HTTP request that was initiated with a Transfer-Encoding: chunked
header, there is a known issue where the load balancer forwards the request to the instance
even though the client canceled the request. This can cause backend errors.