Set up integration with Azure Monitor

In addition to monitoring your Azure workloads using OneAgent, you can integrate Dynatrace with Azure Monitor to monitor infrastructure and gain insight even in serverless application scenarios.

This integration uses Azure Monitor metrics for service insights, as well as Azure Resource Manager (ARM) to gather metadata.

Cloud-service monitoring consumption

As of 2021, all cloud services consume Davis data units (DDUs). The amount of DDU consumption per service instance depends on the number of monitored metrics and their dimensions (each metric dimension results in the ingestion of 1 data point; 1 data point consumes 0.001 DDUs).

Prerequisites

  • Sufficient permissions to register an application with your Azure AD tenant and assign the application to a role in your Azure Subscription.
  • An Azure service principal to access Azure APIs.
  • ActiveGate version 1.161+ (GA).
  • See the Dynatrace release notes for the latest enhancements and capabilities. We recommend that you keep your versions up to date.

Create an Azure service principal

Note: Dynatrace integration for Azure supports Azure Lighthouse, which allows Dynatrace to have multi-tenant access to Azure.

The instructions below refer to a common single-tenant access approach.

For Dynatrace to monitor your services, you need at least reader permissions. You can choose to either assign the service principal reader permissions, or create a custom role for it with a predefined set of permissions for fine-grained control. Both options are described below.

Option 1: Setup if you assign reader permissions

Run the command below to create a service principal and assign it reader permissions.

Notes:

  • Be sure to replace the placeholders (<...>) with your own values.
  • Add any subscription you want to monitor to the command. To list all subscriptions, run az account list --output table.
  • Copy the credentials from the output of the command below and save them in a secure place for future use.
az ad sp create-for-rbac --name <YourServicePrincipalName> --role reader --scopes /subscriptions/<YoursubScriptionID1> /subscriptions/<YourSubscriptionID2> --query {ClientID:appId,TenantID:tenant,SecretKey:password}

Option 2: Setup if you create a custom role

  1. Create a custom role. You can use the JSON template below as a base for the permissions you can choose from.
  1. Run the command below to create a service principal and assign it your custom role.

Notes:

  • Be sure to replace the placeholders (<...>) with your own values.
  • Add any subscription you want to monitor to the command. To list all subscriptions, run az account list --output table.
  • Copy the credentials from the output of the command below and save them in a secure place for future use.
az ad sp create-for-rbac --name <YourServicePrincipalName> --role <YourCustomRole> --scopes /subscriptions/<YoursubScriptionID1> /subscriptions/<YourSubscriptionID2> --query {ClientID:appId,TenantID:tenant,SecretKey:password}

Configure Dynatrace to connect to your Azure environment

  1. In the Dynatrace menu, go to Settings.

  2. Select Cloud and virtualization > Azure and then select Connect new instance.

  3. Type a descriptive name for the connection.

  4. Enter the values for your Client ID and Tenant ID obtained when creating the Azure service principal. Note: If you created the Azure service principal in PowerShell, set Client ID to the ApplicationId value.

  5. Enter the Secret Key obtained when creating the Azure service principal.

  6. recommended You can limit the data captured from the Azure Monitor by defining a tag-based filter of specific resources.

  7. optional Turn off automatic tag import. If turned on, resource tags are imported (resource group tags aren't imported).

  8. Select Connect to add the connection information to the list of Azure connections. You can edit connection information at any time.

    Note: The integration accesses the following Azure API endpoints, so they need to be available from your environment:

    • https://management.azure.com/
    • https://login.microsoftonline.com/

After you have configured Dynatrace to connect to your Azure environment, Dynatrace immediately starts investigating the subscriptions and deployed services accessible for the service principal and starts monitoring them.

Estimate Azure consumption for metric queries from Azure Monitor

The table below shows the number of metrics captured for your Azure Services supported through the integration of Dynatrace with Azure Monitor.

Azure service Monitoring entity Additional dimensions Number of metrics
Load balancer1 Load balancer
Load balanced Virtual Machine
7
5
Application Gateway Application Gateway
Application Gateway - Backend Pool
Application Gateway - HTTP Status Group
2
4
1
Cosmos DB Cosmos DB Azure region, Database name, Collection name 11
Event-Hub Event-Hub
Event-Hub Namespace
13
3
IOT-Hub IOTHub 25
Redis Cache Redis Cache 13
ServiceBus ServiceBus Namespace
ServiceBus Queue
ServiceBus Topic
13
10
11
Azure SQL Azure SQL Database
Azure SQL ElasticPool
15
12
Azure Storage account Azure Storage account
Azure Storage account
Type (blob, table, etc.), Tier 3
8
Virtual Machine Virtual Machine 7
Virtual Machine Scale Sets Virtual Machine Scale Sets 7
Azure AppServices Azure AppService AppService Plan instances 14
Azure Functions Azure Functions AppService Plan instances2 12
1

No metrics are available for Basic SKU Load Balancers.

2

Functions based on consumption plan measure as one instance.

Metrics queries

The query interval is 5 minutes with a resolution of 1 minute. Azure Resource Manager might throttle API requests, which will increase the interval to 10 or 15 minutes. For more details on request limits, see Throttling Resource Manager requests.