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:
| Category | What it covers |
|---|---|
| Reliability | Flags configuration risks that could affect application availability and uptime |
| Security | Detects vulnerabilities and threats that could lead to security breaches |
| Performance | Identifies changes that could speed up your applications |
| Operational Excellence | Suggests improvements to workflows, deployment processes, and resource management |
| Cost | Finds 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:
| View | Scope | Purpose |
|---|---|---|
| Azure Status | Global (all Azure services and regions) | Check for widespread outages affecting Azure as a whole |
| Service Health | Your subscriptions and regions | Shows outages, planned maintenance, and health advisories relevant to the services you actually use |
| Resource Health | Individual resources | Shows 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 type | Trigger |
|---|---|
| Metric alerts | A resource metric (e.g., CPU above 80%) crosses a threshold |
| Log search alerts | A Log Analytics query returns results matching a defined condition |
| Activity log alerts | A 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
| Tool | Proactive or reactive? | Scope |
|---|---|---|
| Azure Advisor | Proactive (recommendations) | Azure resource configuration |
| Azure Service Health | Reactive + proactive (alerts) | Azure platform health |
| Azure Monitor (Alerts) | Reactive (alert when condition met) | Resources, logs, and metrics |
| Log Analytics | Reactive (investigate with queries) | Collected logs and metrics |
| Application Insights | Both (live metrics + alerts) | Application performance |
Azure Advisor — Five Pillars Mapped to Well-Architected Framework
| Advisor Category | WAF Pillar | Key Azure services it evaluates |
|---|---|---|
| Reliability | Reliability | VM availability sets/zones, backup policies, SLA gaps |
| Security | Security | Defender for Cloud recommendations, MFA gaps, RBAC issues |
| Performance | Performance Efficiency | VM sizing, SQL index recommendations, CDN usage |
| Operational Excellence | Operational Excellence | Resource tagging, deployment practices, service limits |
| Cost | Cost Optimization | Idle VMs, underutilized reservations, Spot VM opportunities |
Service Health — Three Views Compared
| View | Requires sign-in? | Scope | Best use |
|---|---|---|---|
| Azure Status | No | All Azure | Check if Azure is globally impacted |
| Service Health | Yes | Your services + regions | Track incidents relevant to your workloads |
| Resource Health | Yes | Single resource | Diagnose 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 type | Data source | Example use |
|---|---|---|
| Metric alert | Real-time metric stream | CPU > 80% for 5 minutes |
| Log search alert | Log Analytics workspace | Query returns > 0 failed logins in 10 minutes |
| Activity log alert | Azure Activity Log | VM deleted event in subscription |
| Smart detection | Application Insights | Anomalous 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
| Method | Code changes required | Supported runtimes |
|---|---|---|
| SDK-based | Yes | .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.
Explore Monitoring Tools in the Azure Portal
Step 1 — Review Azure Advisor
- Sign in to portal.azure.com.
- Search for Advisor and open Azure Advisor.
- Click the Overview tile — review the five category scores.
- Click Cost recommendations — observe whether any idle resources or right-sizing opportunities are flagged.
- Click a recommendation and observe the Take action and Postpone options.
Step 2 — Explore Azure Service Health
- Search for Service Health and open the service.
- Click Service issues — see any active Azure service outages (filtered to your region/services).
- Click Planned maintenance — see upcoming maintenance windows for services you use.
- Click Resource health — select a specific resource and check its health history.
- Click + Add service health alert — see how to configure automated notifications.
Step 3 — Use Azure Monitor and Log Analytics
- Search for Monitor and open Azure Monitor.
- Click Metrics — select a resource and a metric (e.g., CPU percentage for a VM).
- Observe the real-time chart; change the time range to Last 7 days.
- 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_ - Click Alerts → + Create alert rule — explore the metric-based alert builder.
Step 4 — Explore Application Insights (if available)
- Search for Application Insights and open an existing instance (or a web app with AI enabled).
- Review the Overview page: requests, failures, response time, and availability.
- Click Availability — see any availability tests configured.
- Click Live Metrics — view real-time request stream.
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?