AZ-900 Learning Portal
Objective 3.4 25 minmedium priorityazure-advisorazure-monitorservice-healthlog-analyticsapplication-insightsKQLalerts

3.4 — Describe monitoring tools in Azure

Azure provides three monitoring layers: Azure Advisor (proactive best-practice recommendations), Azure Service Health (platform health awareness), and Azure Monitor (metrics, logs, alerts, and Application Insights for live telemetry).

Concept — What & Why

Azure Advisor

Azure AdvisorA personalized best-practices recommendation engine built into the Azure portal. It evaluates deployed Azure resources and surfaces actionable guidance across five categories: Reliability, Security, Performance, Operational Excellence, and Cost. evaluates your deployed resources and surfaces actionable best-practice guidance across five categories:

CategoryWhat it covers
ReliabilityFlags configuration risks that could affect application availability and uptime
SecurityDetects vulnerabilities and threats that could lead to security breaches
PerformanceIdentifies changes that could speed up your applications
Operational ExcellenceSuggests improvements to workflows, deployment processes, and resource management
CostFinds opportunities to reduce Azure spending (e.g., right-sizing, idle resources)

Each recommendation includes a suggested action you can take right away, postpone, or dismiss. You can configure notifications so Advisor alerts you when new recommendations appear.

The Advisor dashboard can be filtered by subscription, resource group, or service.


Azure Service Health

Azure Service HealthA service that helps you stay informed about the health of Azure infrastructure — both globally and in relation to the specific resources you run. Provides three views: Azure Status (global), Service Health (personalized to your subscriptions), and Resource Health (per individual resource). keeps you informed about Azure platform health at three levels of scope:

ViewScopePurpose
Azure StatusGlobal (all Azure services and regions)Check for widespread outages affecting Azure as a whole
Service HealthYour subscriptions and regionsShows outages, planned maintenance, and health advisories relevant to the services you actually use
Resource HealthIndividual resourcesShows whether a specific resource (e.g., a VM) is running normally and whether an issue is on Azure's side or yours

Service Health vs. Azure Status: Azure Status is a global public page for widespread incidents. Service Health is personalized — because you are signed in, it knows which services and regions matter to you and filters accordingly.

You can set up Service Health alerts so your team is automatically notified of outages or planned maintenance. Historical alerts are retained for analysis.


Azure Monitor

Azure MonitorThe central platform for collecting, analyzing, and acting on telemetry data from Azure and non-Azure resources. Gathers metrics (numerical performance data) and logs (structured and unstructured event data). Works with Azure, on-premises, and multicloud environments. is the unified telemetry platform for Azure — collecting metrics and logs from Azure, on-premises, and multicloud resources alike.


Azure Log Analytics

Log AnalyticsThe tool within Azure Monitor where you write and run KQL (Kusto Query Language) queries against the data Azure Monitor collects. Used to filter and search log data, run advanced analytics, build dashboards, and power alert rules. is the query interface inside Azure Monitor — you write KQL queries to investigate the collected data. Use Log Analytics to:

  • Filter and search log data (e.g., all errors in the last hour).
  • Run advanced analytics and visualize trends over time.
  • Build custom workbooks and dashboards.
  • Power alert rules with log-based conditions.

Azure Monitor Alerts

Azure Monitor Alerts proactively notify you when a condition you defined has been met:

Alert typeTrigger
Metric alertsA resource metric (e.g., CPU above 80%) crosses a threshold
Log search alertsA Log Analytics query returns results matching a defined condition
Activity log alertsA specific event occurs in the Azure activity log (e.g., a VM is deleted)

When an alert fires, it triggers an action group — a reusable set of notifications and actions (email, SMS, webhook, Azure Function, Logic App, etc.).

Action groups are reusable across Azure Monitor, Service Health, and Azure Advisor notifications.


Application Insights

Application InsightsA feature of Azure Monitor focused on application performance monitoring (APM) for web applications. Can be enabled via SDK-based instrumentation (add SDK to application code) or agent-based (codeless, no code changes required). is the APM feature inside Azure Monitor — it can be enabled with or without code changes. Application Insights monitors:

  • Request rates, response times, and failure rates
  • Dependency calls (calls to databases or external APIs) and their performance
  • Page load times, user counts, and session trends
  • Server performance counters (CPU, memory, network usage)
  • Availability tests — synthetic requests sent to your app to verify it responds even during low-traffic periods

How the Monitoring Tools Fit Together

ToolProactive or reactive?Scope
Azure AdvisorProactive (recommendations)Azure resource configuration
Azure Service HealthReactive + proactive (alerts)Azure platform health
Azure Monitor (Alerts)Reactive (alert when condition met)Resources, logs, and metrics
Log AnalyticsReactive (investigate with queries)Collected logs and metrics
Application InsightsBoth (live metrics + alerts)Application performance

Deep Dive — How It Works

Azure Advisor — Five Pillars Mapped to Well-Architected Framework

Advisor CategoryWAF PillarKey Azure services it evaluates
ReliabilityReliabilityVM availability sets/zones, backup policies, SLA gaps
SecuritySecurityDefender for Cloud recommendations, MFA gaps, RBAC issues
PerformancePerformance EfficiencyVM sizing, SQL index recommendations, CDN usage
Operational ExcellenceOperational ExcellenceResource tagging, deployment practices, service limits
CostCost OptimizationIdle VMs, underutilized reservations, Spot VM opportunities

Service Health — Three Views Compared

ViewRequires sign-in?ScopeBest use
Azure StatusNoAll AzureCheck if Azure is globally impacted
Service HealthYesYour services + regionsTrack incidents relevant to your workloads
Resource HealthYesSingle resourceDiagnose a specific resource outage

Only Resource Health tells you if an issue is on Azure's side or yours — it distinguishes platform faults from customer-side misconfiguration.


Azure Monitor Alert Types — Trigger Comparison

Alert typeData sourceExample use
Metric alertReal-time metric streamCPU > 80% for 5 minutes
Log search alertLog Analytics workspaceQuery returns > 0 failed logins in 10 minutes
Activity log alertAzure Activity LogVM deleted event in subscription
Smart detectionApplication InsightsAnomalous failure rate detected by ML

Action groups are the delivery mechanism — one action group can be shared across multiple alert rules, reducing configuration overhead.


Application Insights — Instrumentation Options

MethodCode changes requiredSupported runtimes
SDK-basedYes.NET, Node.js, Python, Java, JavaScript
Agent-based (codeless)No.NET, Java, Node.js (select scenarios)

Availability tests (ping tests) are a unique Application Insights feature — they send synthetic HTTP requests to your application from multiple locations worldwide and alert you if the app does not respond correctly. This provides monitoring even during low-traffic periods.


Hands-On Lab

Explore Monitoring Tools in the Azure Portal

Step 1 — Review Azure Advisor

  1. Sign in to portal.azure.com.
  2. Search for Advisor and open Azure Advisor.
  3. Click the Overview tile — review the five category scores.
  4. Click Cost recommendations — observe whether any idle resources or right-sizing opportunities are flagged.
  5. Click a recommendation and observe the Take action and Postpone options.

Step 2 — Explore Azure Service Health

  1. Search for Service Health and open the service.
  2. Click Service issues — see any active Azure service outages (filtered to your region/services).
  3. Click Planned maintenance — see upcoming maintenance windows for services you use.
  4. Click Resource health — select a specific resource and check its health history.
  5. Click + Add service health alert — see how to configure automated notifications.

Step 3 — Use Azure Monitor and Log Analytics

  1. Search for Monitor and open Azure Monitor.
  2. Click Metrics — select a resource and a metric (e.g., CPU percentage for a VM).
  3. Observe the real-time chart; change the time range to Last 7 days.
  4. Click Logs — if a Log Analytics workspace is connected, write a simple KQL query:
    AzureActivity
    | where TimeGenerated > ago(24h)
    | summarize count() by OperationName
    | top 10 by count_
    
  5. Click Alerts → + Create alert rule — explore the metric-based alert builder.

Step 4 — Explore Application Insights (if available)

  1. Search for Application Insights and open an existing instance (or a web app with AI enabled).
  2. Review the Overview page: requests, failures, response time, and availability.
  3. Click Availability — see any availability tests configured.
  4. Click Live Metrics — view real-time request stream.

Exam Angle — What AZ-900 Tests

AZ-900 Exam Focus

Exam Trap

"Azure Advisor monitors application performance in real time" — Wrong. Azure Advisor provides recommendations based on best practices, not real-time monitoring. Real-time monitoring and alerting is handled by Azure Monitor (and Application Insights for apps specifically).

Exam Trap

"Azure Service Health shows the health of your specific resources" — Partially correct, but the specific per-resource view is Resource Health (a component of Service Health). Azure Status shows global Azure health. Service Health is personalized to your services and regions.

Exam Trap

"Azure Monitor can only collect data from Azure resources" — Wrong. Azure Monitor collects data from Azure, on-premises, and multicloud environments (via Azure Monitor agents and Arc-connected resources).

Exam Trap

"Log Analytics is a separate service from Azure Monitor" — Wrong. Log Analytics is a tool within Azure Monitor — it is where you query the data that Azure Monitor collects using KQL. It is not a standalone separate service.

Exam Trap

"Application Insights requires code changes to monitor an application" — Wrong. Application Insights supports agent-based (codeless) instrumentation for several runtimes, so it can be enabled without modifying application code.

Must Memorize

Azure Advisor = recommendations (proactive, 5 categories)
Azure Service Health = Azure platform health (Status / Service Health / Resource Health)
Azure Monitor = telemetry platform (metrics + logs + alerts + App Insights)
Log Analytics = KQL query tool INSIDE Azure Monitor
Application Insights = APM feature INSIDE Azure Monitor


Question — click to flip

Q: What are the five categories of Azure Advisor recommendations?

Question — click to flip

Q: What is the difference between Azure Status, Service Health, and Resource Health?

Question — click to flip

Q: What is Log Analytics and how does it relate to Azure Monitor?

Question — click to flip

Q: What is an action group in Azure Monitor?

Question — click to flip

Q: What does Application Insights monitor, and does it require code changes?

Question — click to flip

Q: What are availability tests in Application Insights?


Sources & Further Reading