My Elastic Beanstalk application is in a constant severe state... even though it's working absolutely fine.

Looking at the Health screen it says that 100% of its requests are 3xx, and looking at the logs, this is apparently confirmed:

[29/Nov/2017:10:07:46 +0000] "GET / HTTP/1.1" 302 356 "-" "ELB-HealthChecker/2.0"

This makes perfect sense, as / will 302 Redirect you to the "login" page.

The thing is, I've told AWS to NOT use / when checking for health, but instead to use /news which should always return a 200, whether you're logged in or not:

enter image description here

I've tried changing the Health check URL to other suitable endpoints, and restarting the EC2 instance, but it always returns to checking / (according to the logs). I've given it 12 hours to see if it would change in time, too.

So why does it keep checking / and returning a severe state? What can I do to fix this? Is it a Security Group issue perhaps (even though the site is open to the public)?


It seems the error was caused by a Heath Check for the Application Load Balancer, not the Elastic Beanstalk application. The ALB needs its target changing in a different place (see the documentation).

It was an easy fix once I knew that:

To modify the health check settings of a target group using the console

  1. Open the Amazon EC2 console at https://console.aws.amazon.com/ec2/.
  2. On the navigation pane, under LOAD BALANCING, choose Target Groups.
  3. Select the target group.
  4. On the Health checks tab, choose Edit.
  5. On the Edit target group page, modify the settings as needed, and then choose Save.
  • 1
    Yeah, the health check will consider any non-2XX error code to be a failure. – ceejayoz Nov 30 '17 at 16:55
  • Seems to me they consider any non 200 code to be a failure in fact. – Dan Feb 25 at 1:28
  • @Dan No, that's not the case. – Django Reinhardt Feb 26 at 10:56
  • By which I mean to say that it asks for a specific code... and if it doesn't match, then it's a failure. So if your health check code is 200 and your response code is 201 then voila. – Dan Feb 27 at 8:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.