How do I monitor Microsoft Azure Web Apps?

Before you begin

What you’ll need

What is Azure Web Apps?

Azure Web Apps is a service provided by Microsoft Azure that gives you the option of deploying and auto-scaling applications and services. Using a predefined Azure site extension you can modify your deployment by supplying additional resources or packages. For more information, see the Azure Web Sites documentation. For maximum ease of installation, Dynatrace provides an Azure site extension that you can download from the Azure Site Extensions gallery.

Installation

Generate API token

The first step is to get your environment ID and generate an API token for your Dynatrace environment. All the required information is presented to you in the Deploy Dynatrace wizard. This information is required so we can map your Azure account to your Dynatrace account.

  1. From your Dynatrace home dashboard, open the Dynatrace menu and select Deploy Dynatrace.
  2. On the Deploy Dynatrace page, click Set up PaaS integration. Here you can copy the environment ID and generate the API token that Dynatrace needs to link your Dynatrace account with Azure Web Apps, as shown below.

Configure the Dynatrace Site Extension via the Azure portal

  1. Now, open portal.azure.com in a new browser window.
  2. Navigate to the web app you want to monitor.
  3. From Settings, select Application Settings. Scroll down to the App Settings area and add two new Key/Value pairs:
    • DT_TENANT: Your environment ID, as shown above.
    • DT_API_TOKEN: Copy and paste the API token from the Download Dynatrace page shown above.
  4. If you’re using Dynatrace Managed, you need to configure additional settings to allow the site extension to download OneAgent from your Managed server:
    • DT_API_URL: This needs to be set to https://<YourManagedServerURL>/e/<environment-id>/api.
    • DT_SSL_MODE (optional): By default, the Dynatrace site extension validates the SSL certificate required to download the OneAgent binaries from your Dynatrace Managed server. If you use a self-signed SSL certificate on your Dynatrace Managed server, you can force the site extension to accept it by setting DT_SSL_MODE to all.
  5. Remember to persist your changes by clicking the Save button at the top of the page.

Install the Dynatrace Azure site extension

You can do this either via the Azure Portal, or through Kudo.

Via the Azure Portal

  1. Now, open portal.azure.com in a new browser window.
  2. Navigate to the web app you want to monitor.
  3. Select Extensions from the list of options. You’ll find this in the Development tools subsection (note the Search field at the top of the page in case you have trouble finding this option).
  4. Within the new pane (i.e., “blade” in Azure terminology) that appears on the right-hand side, click Add.
  5. Scroll through the list until you find Dynatrace OneAgent. Note that entries are not ordered alphabetically.
  6. Click OK to apply Dynatrace monitoring to your Azure website.
  7. Restart your website so that Dynatrace begins to receive monitoring data. Following restart, you should see the hosts and services that you’ve set up via your Azure service plan (see example below). Note that the PaaS type setting is set to Azure.

Via Kudo

Alternatively, you can install the Dynatrace site extension via Kudu, which is available at this URL <website-name>.scm.azurewebsites.net.

.

Once setup is complete, your Dynatrace home dashboard shows you all server-side and browser-side metrics—all without modifying a single line of code or touching your deployment scripts.

Have the earlier version of the Dynatrace site extension?

The earlier version of the Azure site extension, the Dynatrace Ruxit version, has been deprecated. This version will continue working and remain current only up through Dynatrace OneAgent version 101. Current and future versions of Dynatrace OneAgent will not work with this version.

The current version of the Dynatrace site extension includes many enhancements and automatically syncs with current and future versions of Dynatrace OneAgent.

Migrate from the earlier version of the Azure site extension

To migrate an existing Azure web application to the latest version of the Dynatrace site extension:

  1. Delete the existing Dynatrace Ruxit version of the site extension from your web app.
  2. Remove the two RUXIT_ settings.
  3. Restart your Azure web app.
  4. Follow the instructions above to install the latest version of the Dynatrace extension.

Uninstallation

Just as with the installation process described above, uninstalling the Dynatrace site extension can be done either via the Azure portal or by using Kudo.

Troubleshooting

503 Service Unavailable for Web App and Kudo

The Dynatrace site extension registers IIS modules at installation time. If registration is complete but the actual IIS module files aren’t in place (or corrupt), the Web App may return a 503 Service Unavailable message. Also, the Kudo AppPool will no longer be available, which effectively means that you can no longer fix your app. If this occurs, please file a support case. Fortunately, there is a way to recover from such a situation by adding the following setting in Application Settings to effectively deactivate all site extensions:

WEBSITE_PRIVATE_EXTENSIONS=0

This setting will give you access to Kudo once again. Please then re-install the site extension and set WEBSITE_PRIVATE_EXTENSIONS=1 (or remove the setting entirely). Following application restart, everything should work again, including Dynatrace monitoring.