Azure Web App monitoring dashboard showing uptime status and App Service health metrics
# website monitoring

How to Monitor Azure Web Apps Uptime

Azure App Service (Web Apps) is Microsoft's fully managed hosting platform for web applications. Like all managed platforms, it handles infrastructure — but your application can still fail in ways that require monitoring and fast response.

Azure Web App Failure Modes

  • App deployment failure — new code deployed with errors
  • Scaling issues — app can't scale to meet demand
  • Custom domain misconfiguration — DNS records not pointing to Azure
  • SSL certificate expiry — certificate not auto-renewed
  • App Service Plan exhaustion — resource limits hit
  • Cold starts — especially on lower tiers (Free, Shared, Basic)
  • Dependency failures — connected databases, storage, or external services

External HTTP monitoring catches most of these.

External HTTP Monitoring

Set up an uptime monitor on your Azure Web App's custom domain (or the .azurewebsites.net domain):

Monitor: https://yourapp.com
(or: https://yourappname.azurewebsites.net)
Expected status: 200
Interval: 1 minute

This tests the complete path from the internet to your application, including DNS, Azure load balancing, and your application code.

Adding a Health Endpoint

Add a dedicated health endpoint to your application:

// ASP.NET Core
app.MapGet("/health", () => Results.Ok(new { status = "ok" }));

// Or using the built-in health checks middleware
builder.Services.AddHealthChecks();
app.MapHealthChecks("/health");
# Django / Flask
@app.route('/health')
def health():
    return jsonify({'status': 'ok'}), 200

Monitor this endpoint for a lightweight availability check.

Azure Monitor and Application Insights

Azure provides native monitoring tools that complement external uptime monitoring:

Azure Monitor Availability Tests

Azure Monitor includes built-in availability tests (similar to uptime monitoring) that can check your application from multiple Azure regions:

  1. In Azure Portal: Monitor → Availability Tests
  2. Add a URL ping test or multi-step web test
  3. Configure alert rules when tests fail

This is Azure's native uptime monitoring, but it's worth supplementing with external monitoring from a non-Azure network to catch Azure-specific failures.

Application Insights

Application Insights provides APM functionality for Azure applications:

  • Request rate, failure rate, and response time
  • Dependency tracking (database calls, external APIs)
  • Exception tracking with stack traces
  • Custom dashboards and alerts

Enable Application Insights from the Azure Portal (App Service → Application Insights) or by adding the SDK to your application.

Custom Domain and SSL Monitoring

Azure Web Apps support custom domains with SSL managed by Azure (via App Service Managed Certificates or your own certificate).

Monitor your custom domain's certificate:

SSL certificate monitor: yourapp.com
Alert at: 30 days remaining

Azure's managed certificates auto-renew, but failures can occur. See SSL certificate monitoring.

Also monitor domain expiry for your custom domain — Azure doesn't manage your domain registration. See domain expiry monitoring.

Deployment Slots and Blue-Green Deployments

Azure Web Apps supports deployment slots (staging, production). When swapping slots:

  • Configure a maintenance window in your monitoring to suppress false alerts during the swap
  • Verify the health endpoint returns 200 after the swap completes
  • Consider running smoke tests before swapping

App Service Diagnostics

When your external monitor fires an alert for an Azure Web App:

  1. Check the app URL — what error is it returning?
  2. Azure Portal → App Service → Overview — check the status and recent events
  3. App Service → Diagnose and Solve Problems — Azure's built-in diagnostic tool
  4. App Service → Log Stream — live application logs
  5. Application Insights → Failures — if Application Insights is configured, check for errors

Slot Warm-Up and Health Probes

Configure health check for your App Service to enable warm-up and load balancing:

In Azure Portal: App Service → Configuration → Health Check

  • Path: /health
  • If health check fails, Azure routes traffic away from unhealthy instances

This built-in health probe combined with external monitoring gives you both internal and external visibility.

Alert Configuration

EventDetection MethodAlert
App unavailableExternal HTTP monitorSMS + Slack
SSL certificate expirySSL monitorEmail (30 days)
Domain expiryDomain monitorEmail (60 days)
High failure rateApplication InsightsSlack
Slow responsesExternal monitor thresholdSlack

See how to set up downtime alerts for complete configuration.


Monitor your Azure Web Apps externally at Domain Monitor — the user-perspective view that Azure Monitor doesn't provide.

More posts

What Is a Subdomain Takeover and How to Prevent It

A subdomain takeover lets an attacker claim your subdomain by exploiting dangling DNS records. Learn how it happens, real-world examples, and how DNS monitoring detects it.

Read more
What Is Mean Time to Detect (MTTD)?

Mean time to detect (MTTD) measures how long it takes to discover an incident after it starts. Reducing MTTD is one of the highest-leverage improvements in reliability engineering.

Read more
What Is Black Box Monitoring?

Black box monitoring tests your systems from the outside, the way users experience them — without access to internal code or infrastructure. Learn how it works and when to use it.

Read more

Subscribe to our PRO plan.

Looking to monitor your website and domains? Join our platform and start today.