How do I troubleshoot the drop in the RequestCount metric of the Application Load Balancer?

3 minute read
0

I want to know the reason for the drop in the RequestCount metric of the Application Load Balancer.

Resolution

The following are some common reasons why you might see a drop in the RequestCount metric.

The load balancer generated an HTTP 503 error

"Error 503: "http 2017-04-27T22:18:15.515594Z app/abcd-alb/a183bea62b3003c2 1.1.1.1:40390 - -1 -1 -1 503 - 85 386 "GET http://alb.ijklmn.com.com:80/ HTTP/1.1" "curl/7.51.0" - - arn:aws:elasticloadbalancing:eu-central-1:123456789:targetgroup/Group1/bfc4c436e9e5937f "Root=1-59026e27-1318b3077cf835cb3d232ac0"

The preceding error might occur because the target groups for the load balancer don't have registered targets. The load balancer generates the HTTP 503 error for all incoming requests, and the RequestCount metric isn't incremented.

To resolve the error, check the HTTPCode_ELB_503_Count metric and elb_status_code field in the access logs for the Application Load Balancer.

The load balancer generated an HTTP 400 error

"Error 400: "http 2024-03-28T07:04:01.735439Z app/abcd-alb/a183bea62b3003c2 1.1.1.1:45998 - -1 -1 -1 400 - 25322 188 "GET http://alb.ijklmn.com:80/ HTTP/1.1" "curl/7.51.0" - - arn:aws:elasticloadbalancing:eu-central-1:123456789:targetgroup/Group1/bfc4c436e9e5937f "-"

The preceding error might occur for the following reasons:

  • The client sends a malformed request that doesn't meet the HTTP specification.
  • The request header exceeds 16 KB per request line, 16 KB per single header, or 64 KB for the entire request header.
  • The client closed the connection before it sent the full request body.

For more information about Application Load Balancer errors, see The load balancer generates an HTTP error. You can also refer to the HTTPCode_ELB_4XX_Count metric to get the total number of the 400 errors that the load balancer generated. Or, review the logs to identify and analyze the specific error code that was generated.

The load balancer generated other HTTP errors

The following are all the HTTP error codes that the Application Load Balancer generates for events that didn't increment the RequestCount metric:

To determine the root cause of the issue, check the load balancer metrics and access logs.

The RequestCount metric drops because of increased traffic

The Application Load Balancer quickly scales when there's a sudden increase in traffic. When the load balancer is scaling, some requests might get dropped. Because some requests are dropped, the RequestCount metric drops.

As a best practice, gradually scale the Application Load Balancer over a period of 5 minutes. Don't exceed the 100% maximum scale rate. If you expect a spike in traffic, then submit a pre-warm and pre-configure request to AWS Support. For more information, see Pre-warming the load balancer in Best practices in evaluating Elastic Load Balancing.

The RequestCount metric drops because of an increase in TLS negotiation errors

Unexpected Transport Layer Security (TLS) negotiation errors can also cause a drop in the RequestCount metric. These errors occur when you modify the Secure Socket Layer (SSL), security policy, or certificates in the listener configuration.

To resolve the error, take the following actions:

Related information

CloudWatch metrics for your Application Load Balancer

Access logs for your Application Load Balancer

AWS OFFICIAL
AWS OFFICIALUpdated 23 days ago