Monitoring Tools on Azure Cloud
Azure Advisor
Azure Advisor evaluates your Azure resources and provides recommendations to help improve:
- Reliability
- Security
- Performance
- Operational Excellence
- Cost Efficiency
Azure Advisor is designed to help users save time optimizing their cloud environment. The recommendation service includes suggested actions that can be taken immediately, postponed, or ignored.
These recommendations are available through the Azure portal and API, and notifications can be set up to alert when new recommendations are available.
How to Access It?
While in the Azure portal, the Azure Advisor dashboard displays personalized recommendations for all your subscriptions. You can filter recommendations by:
- Specific subscription
- Resource group
Service Categories
Azure Advisor Recommendation Categories:
- Reliability
To ensure and improve the continuity of critical business applications. - Security
To detect threats and vulnerabilities that could cause security breaches. - Performance
To enhance application speed and efficiency. - Operational Excellence
To help improve process and workflow efficiency, resource management, and good deployment practices. - Cost
To optimize and reduce overall Azure expenditure.
Azure Service Health
Microsoft Azure provides a global cloud solution to help manage infrastructure, reach customers, innovate, and adapt quickly. Azure Service Health helps track the status of your Azure resources, both globally and specific to your subscriptions.
Azure Service Health includes three main services:
1. Azure Status
- Provides an overview of the status of all Azure services globally.
- Displays service outages across all regions.
- Suitable for incidents with broad impact.
Accessible at: https://status.azure.com
2. Service Health
- Provides a more focused view of Azure services and regions you use.
- Shows service outages, scheduled maintenance, and other health advisories.
- Authentication allows a personalized view based on services used.
- You can configure automatic notifications to be alerted of issues affecting your services.
3. Resource Health
- Displays the health of specific Azure resources, like particular VM instances.
- Notifies if a resource is unavailable due to Azure issues or local configuration problems.
- Can integrate with Azure Monitor to create alerts.
- Provides a comprehensive view from global level down to individual resources.
- Stores outage and alert history for further analysis.
- Provides direct links to Microsoft support if workloads are impacted by an incident.
Azure Monitor
Azure Monitor is a comprehensive monitoring platform used to:
- Collect data from various sources (Azure, on-premises, or multi-cloud)
- Analyze that data
- Visualize information
- Take automated actions based on analysis results
Azure Monitor can monitor Azure resources, on-premises resources, and even resources from other cloud providers such as VMs in different clouds.
How Does Azure Monitor Work?
1. Data Sources
Data is collected across all layers of application architecture—from applications, operating systems, to networking.
2. Data Storage
Logs and metrics are stored in a central repository.
3. Data Usage
- Display real-time and historical performance
- Show aggregated or detailed data
- Presented via dashboards, Power BI, or Kusto Query Language (KQL) queries
- Used to send notifications or perform auto-scaling based on thresholds
Azure Log Analytics
Azure Log Analytics is a tool in the Azure portal to write and run log queries on data collected by Azure Monitor. It supports simple to complex queries, statistical analysis, and visualization of results. These queries can be used in other Azure Monitor features like:
- Log-based alerts
- Workbooks
- Interactive dashboards
Azure Monitor Alerts
Azure Monitor Alerts is an automatic notification system that triggers when Azure Monitor detects certain conditions, such as threshold breaches.
You can:
- Define trigger conditions
- Configure notification actions
- Associate with action groups like email, SMS, webhook, etc.
Example: Send an alert if VM CPU > 80%.
Alerts can be based on:
- Metrics (real-time & numeric)
- Logs (with complex logic and multiple sources)
Application Insights
Application Insights is a feature of Azure Monitor that monitors web applications running on:
- Azure
- On-premises servers
- Other clouds
How to Configure:
- Use SDK integrated directly into the app
- Or use the Application Insights Agent
What It Monitors:
- Request rates, response times, failure rates
- External service dependencies
- Page views and loading performance from user browsers
- AJAX usage, user sessions, and server metrics (CPU, memory, network)
- Synthetic requests to monitor apps when there is no real traffic