Monitor Azure Container Apps With Datadog | Datadog

Monitor Azure Container Apps with Datadog

Author Danny Driscoll
Author Mallory Mooney

Published: September 30, 2022

Azure Container Apps is a serverless platform that enables you to deploy containerized applications and microservices—regardless of their code or framework—without managing any underlying cloud infrastructure or orchestrators. By using serverless containers, Azure Container Apps can automatically scale based on HTTP requests or events supported by Kubernetes event-driven autoscaling (KEDA) in order to accommodate peak demand and meet your budgeting goals. The service also integrates with the Distributed Application Runtime (DAPR), giving you a comprehensive suite of tools for deploying your container apps.

Azure Container Apps dashboard

We are excited to announce our turn-key integration with Azure Container Apps. Datadog now provides visibility into key metrics from your container apps, including:

This data gives you better insight into the state of your Azure Container Apps environment so you can easily monitor traffic volume, container configurations, resource usage, and more. And because the integration is part of Datadog’s unified monitoring platform, you can easily track Azure metrics alongside other resources in your environment for a comprehensive view of application performance.

Monitor traffic volume for unusual activity

Your container apps may experience predictable peaks and valleys in traffic volume depending on their purpose and other factors, such as the time of day or day of the week. It’s critical that you have visibility into these traffic patterns so you can detect when they deviate from historical trends. Without it, you may miss performance issues that could affect your customers’ overall experience.

Monitoring the azure.app_containerapps.requests metric, which measures the total number of processed HTTP requests for a particular container app, can help you quickly identify sudden changes in traffic volume. For example, you can use this metric to detect a significant drop in requests during peak hours. To provide better insight into the nature of a request, the metric is also tagged with contextual metadata, such as statuscodecategory and statuscode. For example, you can filter requests by the statuscode tag to quickly identify a surge in server errors.

Azure Container Apps errors

A higher error rate could indicate that a container app is either offline or no longer able to process requests. You can troubleshoot this activity further by reviewing the state of your container apps and their underlying resources.

Ensure that applications are appropriately configured

Each container app instance, which is referred to as a replica in Azure, is supported by one or more containers. When these resources do not have sufficient memory to process requests, they may throw an out-of-memory (OOM) error and terminate. In these cases, replicas will automatically restart by default—but will repeatedly crash.

You can surface these kinds of configuration issues by monitoring the azure.app_containerapps.restart_count metric, which captures the total number of restarts per replica. A low or fixed number of restarts indicates that your container apps are deploying new replica revisions as expected. However, if you see a higher number of replicas restarting within a short period of time along with an equally significant surge in the number server errors, you may need to confirm that they have enough memory to process requests.

Azure Container Apps restart count

Track resource usage and costs across all containerized applications

The amount of resources that you allocate to your container apps not only affects their performance but also their scaling capabilities and overall costs. For example, Azure Container Apps can scale the number of replicas in your environment based on their resource utilization, but Azure also charges for the amount of resources your replicas consume. If you don’t set appropriate limits on the number of replicas in your environment, your monthly costs can significantly increase.

Datadog’s Azure Container App integration gives you a better understanding of Azure’s scaling activity. For example, you can monitor the azure.app_containerapps.replicas metric, which measures the total number of running replicas, to quickly visualize deployment trends. If the metric’s value is trending upward at a constant rate, for instance, your monthly bill will also steadily increase.

Azure Container Apps replica

To improve the cost efficiency of your container apps without sacrificing their performance, you can configure the minimum and maximum number of replicas that Azure deploys to your environment.

Start monitoring Azure Container Apps today

Datadog’s Azure Container Apps integration allows you to monitor all of your containerized applications and microservices in one place. Datadog also enables you to track Azure metrics alongside observability data from other technologies in your stack, giving you a complete picture of your infrastructure. Check out the in-app instructions to learn how to start monitoring your Azure Container Apps. If you don’t already have a Datadog account, you can sign up for a today.