AppDynamics Cloud collects data from Microsoft Azure and correlates that data with the underlying cloud infrastructure. Cloud monitoring does not require agent installation. You can add a cloud connection to your cloud provider account and start monitoring.

This page explains how to connect your AppDynamics Cloud account with Microsoft Azure.

This page contains links to Microsoft Azure documentation. AppDynamics makes no representation as to the accuracy of Microsoft documentation because Microsoft controls its own documentation. AppDynamics does not own any rights and assumes no responsibility for the accuracy or completeness of such third-party documentation.

These are the high-level steps:

  1. Register an Application
  2. Connect Your Azure Account to AppDynamics
  3. Add Custom Configuration for Azure Connection

  4. Verify Connection and Observe Entities
  5. Review Connection State
  6. Edit, Pause, or Delete a Connection

Register a Client Application in the Azure Portal

  1. Log in to portal.azure.com.
  2. On the home page, click App registrations.

    See Register a client application in Azure Active Directory in the Microsoft documentation for details.

  3. On App registrations, click New Registration.
  4. On Register an application under Name, type the name of the application you want to register. The application is the client that you are creating to grant AppDynamics Cloud access.
  5. Select Single-tenant, the default setting.
  6. Click Register
  7. On the AppD-monitoring-app page, copy and save the Application (client) ID and the Directory (tenant) ID to add to AppDynamics Cloud.
    Click Add a certificate or secret (beside Client credentials).
  8. On the Certificates & secrets page, click Client secrets.
  9. Click + New client secret.
  10. On the Add a client secret pop-up, add a description and select an expiration option.

    When the secret expires, AppDynamics Cloud cannot monitor your resources. You must return to this page and create another secret and update the connection.

  11. Click Add.
  12. On Certificates & secrets, copy the Value and save it to add to AppDynamics Cloud. Value is the Client Secret Key. This is the only opportunity to copy the Client Secret Key. If you do not capture it, you can create a new secret.
  13. Click  and select Home.
  14. Use the search bar to locate your subscription and copy your subscription ID

Ensure that you save your Azure subscription information (Tenant ID, Subscription ID, Client ID, and Client Secret Key). 

To assign the app to the subscription:

  1. Click on the subscription name that you want to use from subscriptions service.
  2. Navigate to Access control (IAM).
  3. Click + Add.
  4. Select add role assignment.
  5. Select Reader role by searching Reader using search bar. 
  6. Click Next.
  7. Click Select Members and search for the app you registered in Step 6.
  8. Click Select.
  9. (Optional) Add description to explain the role assignment.
  10. Click Next.
  11. Click Review + assign. The application is now assigned to the subscription with assigned role and permissions. See Assign Azure roles using the Azure portal.

Repeat this process for each connection you want to monitor. To monitor multiple subscriptions, create multiple connections. 

You must have owner access on the respective subscription to be able to create a new role assignment. The Reader role must be assigned.

Connect Your Azure Account to AppDynamics 

To connect your Azure account to AppDynamics Cloud:

  1. From the Observe navigation sidebar, navigate to Configure.
  2. Click Cloud Connections. Cloud Connections displays all connections.
    Cloud Connections UI
  3. Click AWS or Azure to see all connections by type, or use the search function to Filter by connection name to find a specific connection.
  4. Click Microsoft Azure Monitor, or click  and select Microsoft Azure Monitor to configure Azure.
    Configure Azure
  5. Enter a Connection Name.
  6. (Optional) Enter a Connection Description.
  7. Enter your Subscription ID that you saved from the Microsoft Azure web page.
  8. Enter the Tenant ID that you saved from the Microsoft Azure web page.
  9. Enter the Client ID that you saved from the Microsoft Azure web page.
  10. Enter the Client Secret Key that you saved from the Microsoft Azure web page.
  11. Click Next to validate credentials and create the connection.

    If an Invalid Credentials. Unable to establish connection with the credentials error message displays, verify the information on your Cloud Platform portal. Correct the credentials to continue.

Add Custom Configuration for Azure Connection

  1. Select your services. AppDynamics Cloud supports Azure Virtual Machine.

  2. Select your region(s). All available regions is the default.

  3. Select Pause data collection to setup the the connection in advance of monitoring. By selecting this option, the connection is put into a Configured state; activate the connection once you are ready to start collecting data.
    By default, Pause data collection is not selected.
  4. Select the services that need monitoring. By default, all available services are selected.
  5. Limit the cloud service instances to monitor, based on tags. You can use this feature to control and monitor cloud cost, and monitor only the services that are approved by security, legal, and/or business units.

    1. Select Add. To limit data collection at the global level for all services, use the drop-down menu to select All Services.

    2. To add a service-level setting, select  Add. Select a service from the drop-down menu to limit data collection at the service level. The service-level setting will override the global setting.

    3. To monitor specific service instances using tags, add expressions for the services that you want to monitor. You can only use one expression per service. Expressions can be defined with one or more tags. The AND, OR, and NOT operators are supported for multiple tags and multivalued keys. See Troubleshoot Expressions in Azure Configuration

      ExpressionDescriptionExample
      Simple ExpressionPerforms a key-value match using the = and != operators.
      • tags(project) = 'cloudcollectors'
      • tags(project) != 'cloudcollectors'
      In ExpressionIncludes or excludes a set of values for a given key using the IN operator.
      • tags(jira) IN [ 'XTNXBL', 'ACE' ]
      • !(tags(region)  IN [ 'US', 'IN' ])
      Has ExpressionChecks for the presence or absence of a given key using the HAS operator.
      • HAS tags(createdBy)
      • !(HAS tags(createdBy))
      Logical ExpressionCombines two or more expressions using the && and || operators.
      • tags(project) = 'cloudcollectors' || tags(jira) = 'XTNXBL'
      • tags(project) = 'cloudcollectors' && tags(jira) = 'XTNXBL'
      Expression GroupGroups multiple expressions to control the order of evaluation using the ( ) operators. Nested groups are not supported.

      (tags(project) = 'cloudcollectors' && tags(jira) = 'XTNXBL')

      Complex ExpressionCombines two or more expressions.

      (tags(env) = 'prod' || tags(env) = 'production') )
      && tags(project)  = 'cloudcollectors'  
      && tags(jira) IN [ 'XTNSBL', 'ACE' ]  
      && !(tags(region) IN ['US', 'IN'] )
      && HAS tags(monitorEnabled) 
      && !(HAS tags(restrictedUse))

  6. Select the limit collection by location and/or resource group option. All resource groups in the subscription is selected by default. Select Specific resource groups and input resource group names separated by a comma to collect data from a subset of resource groups. All available regions that are assigned to the Azure account is selected by default. Select Specific regions to collect data from a subset of all the regions that are assigned to the Azure account.
  7. Select tags to import. Enter the tags that you want to exclude. By default, all tags are imported. You can use imported tags to filter, group, and reduce health rule scope. 
  8. Click Save.
    The Azure API validates credentials. When complete, the Connection Name, Cloud Connection, Cloud Account ID, and Connection State display in the Cloud Connection list. 
    New Azure Connection Display

Verify Connection and Observe Entities

  1. When the connection state displays Active, AppDynamics Cloud automatically begins monitoring the supported Azure services
  2. Navigate to Observe to monitor your entities. See Observe AWS Infrastructure Entities.

Review Connection State

Cloud Connections displays a list of cloud connections and their current condition. Refer to the connections state for troubleshooting.

These are the possible Cloud Platform connection states:

StateDescription
Active

The connection was successfully created, configured, and is receiving data. The data collection might have started or is expected to start within the next 7 minutes.

ConfiguredThe user created a connection and configured the connection. The connection will remain in Configured state until it is manually activated. The data collection will not start until the connection is activated.
Error

A non-recoverable error occurred, so data is no longer being collected.

Inactive

The user paused the connection after the connection was created and configured.

Insufficient license

There are not enough AppDynamics license units. Contact your AppDynamics Account Representative to increase your license units.

Pending configuration

The user has successfully established a cloud connection but needs to configure the cloud service, regions, and so on.

Warning

A partial error occurred. The data is still being collected for some services.

CriticalA non-recoverable error occurred for some of the resources. The data is still being collected for other resources.


Manage Cloud Connections

Once a connection is created, you can manage the connection.

  1. Clickin the connection row.
  2. Select Edit Connection, Pause Connection, or Delete Connection.

    You cannot edit the Tenant ID and Subscription ID fields. Each Subscription ID that Microsoft Azure provides is unique. Duplicate Subscription ID connections are not allowed.

    Manage Cloud Connections

    To delete a connection, after selecting Delete Connection, a Delete Connection warning appears and you are required to select Delete.

Microsoft Azure, the Microsoft Azure logo, Azure, and any other Microsoft Azure Marks used in these materials are trademarks of Microsoft Corporation or its affiliates in the United States and/or other countries.

Next Steps

After verifying that your connection is successful, see the following pages to learn how to observe your entities: