Cloud computing is an incredible asset to new and seasoned companies alike. With pricing and infrastructure that can accommodate any demand, it’s no wonder so much of the technical world relies on the cloud.
As is to be expected, the power and complexity of cloud platforms comes with a considerable amount of data. And all that data needs to be tracked, measured, and watched in order to ensure a healthy application infrastructure. To solve this problem, the two most popular cloud providers, Microsoft Azure and Amazon Web Services (AWS), both offer their own monitoring solutions to help you keep track of all of the moving parts.
How do the built-in monitoring solutions of Azure and AWS compare? To better answer that question, let’s dig deep into each one and take a look at their respective features.
Microsoft Azure Monitor
Azure Monitor Dashboard
At first glance, the Azure Monitor dashboard is a little overwhelming—There’s a lot going on. When you first open Azure Monitor, you’re initially dropped into the activity log. The activity log tracks subscription-level events that occur from within your account. Everything from write operations taken on resources within your subscription to the status of your infrastructure is available here. It is important to note that, while the activity log provides insight into your Azure subscription, the diagnostic logs are where you will find information about the individual resources within your account—logs from things like the application gateway, load balancer, and search.
Beyond logging, another important feature of Azure Monitor is metrics generation. Metrics are an incredibly valuable feature that allow you to track the performance of resources within your account. While Azure metrics can be used to trigger alerts and autoscale resources, what makes them really powerful is the REST API that ships with them. This gives you the ability to programmatically access your metrics data for further storage, analysis, and interaction.
While logs and metrics power the bulk of Azure Monitor, there is one section that should be specifically pointed out: Health. The health section provides information about the health of Azure as a whole. By putting Azure service issues, planned maintenance, and health history alongside your own account metrics, Azure makes it incredibly easy to identify both local and global issues with your application infrastructure. This goes a long way towards diagnosing problems after the fact.
Amazon Web Services CloudWatch
AWS CloudWatch Dashboard
If the Azure Monitor dashboard seems overwhelming at first, then the AWS CloudWatch dashboard is the opposite. Rather than throwing the kitchen sink in the tool, AWS focuses more on the necessary features of a monitoring platform. Much like Azure Monitor, AWS CloudWatch offers the same separation of subscription-level logs (Events), resource-level logs (Logs), and metrics (Metrics). What makes AWS stand out here is that resource logs need to be configured and sent to AWS CloudWatch from within each server you are utilizing it for. This allows you to send logs from non-AWS servers up to CloudWatch, for more complete insight into your infrastructure. Similar to logs, events in CloudWatch require some configuration before they can provide any value. This is handled through the use of rules, which execute AWS Lambda functions whenever a given event occurs.
AWS CloudWatch Dashboard Management
One feature of AWS CloudWatch that makes it stand out above Azure Monitor is the custom dashboard management. This is a feature that allows you to build visually compelling dashboards with dynamic graphs and metrics for a great top-down view of specific infrastructure groups. The benefit of this particular feature is that you can create a dashboard for different groups of application infrastructure, such as an API and a web service, or even two separate applications altogether, allowing you to monitor your infrastructure’s health within an appropriate context. Additionally, it should be mentioned that, much like Azure Monitor, AWS CloudWatch also provides an API for external metrics access.
While Azure puts a heavy emphasis on transparency within their metrics platform, AWS focuses heavily on automation. Azure’s global health metrics are incredibly valuable when it comes to identifying problems across the entire stack, but the custom AWS dashboard manager provides excellent insight into the trends and health of your personal resources. Ultimately, while each platform provides the ability to gather data about the health of the system, they both offer great support for third-party integrations, allowing you to aggregate logs and metrics in a more appropriate, centralized platform, with minimal configuration.