Create a token to download and setup OneAgent:
Determine your environment ID.
Determine your server URL if required.
The server URL is required only if you use an ActiveGate for a Dynatrace SaaS endpoint. The URL is automatically generated from the environment ID.
https://<your-active-gate-IP-or-hostname>:9999/e/<your-environment-id>/api (the ActiveGate port is configurable)There are two ways to install the Dynatrace OneAgent site extension: via Azure portal or using an ARM template. Follow the steps below for instructions.
If you are on the Consumption plan you need to first stop Azure Function before running the site-extension installation process. You then need to restart Azure Functions once all steps have been completed.
In Azure Portal, go to Azure Functions and select an app service where you want to add the OneAgent extension.
In the left menu, go to to Development Tools > Extensions.
Select Add.
Select Choose an Extension.
From the list of extensions, select Dynatrace OneAgent.
Accept legal terms and select Add. It should take a moment until you see the Dynatrace OneAgent extension in the list.
In the left menu, go to to Development Tools > Advanced Tools and select Go. This will redirect you to the Kudu site.

Select Site extensions.
Select Launch on the Dynatrace tile.
On the Start monitoring your App Functions instance page, enter the relevant configuration details. See the Prerequisites section for details.
Select Install OneAgent.
Restart the application to recycle the application's worker process
To check the deployment status, go to the Fleet Management app in Dynatrace.
After restart, OneAgent starts monitoring your application automatically.
Select only the technologies you need to reduce download time and package size. By default, all technologies are included, which increases the package size.
Alternatively to the main installation method via Azure portal, you can make the Dynatrace site extension part of your ARM templates.
Example configuration:
{"apiVersion": "2016-08-01","name": "[parameters('resourceName')]","type": "Microsoft.Web/sites","properties": {"name": "[parameters('resourceName')]","siteConfig": {"alwaysOn": true,"appSettings": [{ "Name": "DT_TENANT", "Value": "<Environment-ID>" },{ "Name": "DT_API_TOKEN", "Value": "<PaaS-Token>" },{ "Name": "DT_API_URL", "Value": "<Server-Url>" },{ "Name": "DT_SSL_MODE", "Value": "default" }]},"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', parameters('resourceName'))]"},"dependsOn": ["[concat('Microsoft.Web/serverfarms/', parameters('resourceName'))]"],"location": "[parameters('location')]","resources": [{"apiVersion": "2016-08-01","name": "Dynatrace","type": "siteextensions","dependsOn": ["[resourceId('Microsoft.Web/sites', parameters('resourceName'))]"],"properties": { }}]}
| Parameter | Requirement | Description |
|---|---|---|
| Required | The environment ID as described in Prerequisites. |
| Required | The PaaS token as described in Prerequisites. |
| Optional | The server URL, if you want to configure an alternative communication endpoint as described in Prerequisites. |
| Optional | To automatically accept all self-signed TLS certificates, set the value to |
| Optional | The OneAgent technology to install. By default, all technologies are installed. |
| Optional | The OneAgent version to install. By default, the latest version is installed. |
If AlwaysOn isn't set to true, the installation of OneAgent is triggered on the start-up/first request to Kudu.
To check the deployment status, go to
Fleet Management.
After installation is complete, go to Azure portal and restart the App Function application to recycle the application's worker process. Immediately after restart, OneAgent will begin monitoring your application.
After you install the Dynatrace OneAgent site extension, you can use the Kudu REST API to automate installation and update of the Dynatrace OneAgent site extension.
The root URL to access the REST API is https://<Your-AppService-Subdomain>.scm.azurewebsites.net/dynatrace/, where you need to replace <Your-AppService-Subdomain> with your own value. To authenticate, you can use either the user publishing credentials or the site-level credentials.
| Method | Endpoint | Parameters/Response | Example |
|---|---|---|---|
GET |
Returns the current status of the OneAgent installation. | Response: The
For automation, use |
|
GET |
Returns the current settings, including Dynatrace credentials. | Response: The value for |
|
PUT |
Starts OneAgent installation with the given settings. These settings are stored only if the installation finishes successfully. If an update is available in the status request, this | Parameters: Send the data in the format received by the
To check all available versions, use the Deployment API - List available versions of OneAgent. Response: Empty response |
|
| Field | Accepted values |
|---|---|
|
|
|
|
|
|
To override the default configuration, you can use the following parameters.
| Parameter | Description |
|---|---|
| Semicolon-separated list of communication endpoints |
In the Azure portal, select the web function you want to monitor.
Select Settings > Configuration > Application Settings.
Select New application setting.
Enter the following key/value pair:
DT_CONNECTION_POINThttps://<YOUR_ACTIVEGATE_ADDRESS>:9999/communication, making sure to replace <YOUR_ACTIVEGATE_ADDRESS> with your own value.
Select OK to save the configuration.
Dynatrace doesn't provide OneAgent updates on Azure Functions automatically. To update OneAgent on Azure Functions:
If you're on a Consumption Plan, stop Azure Functions before the update and restart them after the update.
The extension provides its own REST API for automating OneAgent updates. For details, see the Kudu REST API section above.
To update the site extension on Azure Functions, go to the Azure portal, browse to your site extension, and, if an update is available, select Update.
An update to the site extension doesn't force an update to OneAgent.
Removing the extension also removes OneAgent.
If the application is running at the time of removal, the extension recognizes the running application, taking care to not remove any Dynatrace artifacts to prevent issues with the application. Instead, only the extension including the configuration is removed, so that, on the next restart of the application, OneAgent is no longer active.