What is the difference between Azure Availability Test and Health Test

Viewed 506

If you go to Azure webapp, and on the left hand panel select Application Insights. Then View Application Insights Data and then click the Availability on the left hand panel, you can add new tests. Basically, here you can specify the health/ping endpoint for the site. You can also here configure some associated rules for the alerts.

Now, Azure has got a new functionality which is called Health Check on the webapp. All you have to do is enable it, and give it your health/ping endpoint. Then you can also configure rules here.

With both methods, the health endpoint is triggered by azure and if something is not right based on the alert rules you get an alert message.

But what is the difference between the two approaches?

2 Answers

The difference is that if your web app runs in multi instances(if you specify the scale rules), for Health check, if an instance fails to respond to the ping, the system determines it is unhealthy and removes it from the load balancer rotation. This increases your application’s average availability and resiliency.

Availability-test in Application Insights does not do such thing, it just checks the health.

You can review these docs: Health Check is now Generally Available, Does App Service Health Checks logs in Application Insights?, What App Service does with Health checks.

App Insights Data Availability is very specified for checking health and alerting via some mode, while Health check was released for a way bigger prospects with the facility of

  1. Health check for all instances every 1 min (somewhere what availability test does)
  2. Removes the instance if ping fails.
  3. restarts underlying VM
  4. replaces the instance if needed
  5. Helps in scale out/up for new instances.

Moreover, this can be used for more stuff like reporting etc. please make sure that it's not used for premium services.

Related