Microsoft Azure App Service
Use this SAM application monitor template to monitor requests sent to the Microsoft Azure App service, an HTTP-based service for hosting web applications, REST APIs, and mobile backends. To use this template, assign it to an external node that points to portal.azure.com.
Passwords for legacy Microsoft Azure application monitor templates and related application monitors are stored as plain text in the SolarWinds Platform database. SolarWinds recommends switching to Microsoft Azure API poller templates that leverage OAuth 2.0 authorization.”
Prerequisites
- For each target node:
- Add an external node that points to portal.azure.com
- Install PowerShell 5.1 with the Azure or AzureRM module is installed.
- Azure account has sufficient permissions to monitor data.
- For the Azure application Minimum role of 'Read Only'
- Registered in Azure Active Directory with a Contributor or Reader role for the monitored application. See Add an Azure Active Directory app for cloud monitoring.
- Components connect to Azure using service principal authentication for which an application was created in Azure. See Provide applications access to Azure Stack.
- Application requirements:
- Provide Azure IAM permission to the application. See Configure Azure IAM permissions for cloud monitoring in the SolarWinds Platform.
- Gather the following details for use in script arguments:
- Subscription ID
- Tenant ID
- Application ID
- Resource Group for the application
- Secret Key
This template was updated in March 2020 to fix an issue with the Average response time monitor. If using a version of SAM installed before SAM 2020.2, import the latest version from THWACK.
Notes
Include Azure Portal credentials in script arguments for component monitors, as shown in this example:
subID,TenantID,APPID,SecretKey=secretKey,APPNAME,RESOURCEGROUP,TimeRange=1
Optional parameters, such as $waitTime
can be passed in script arguments. See the Script Body field for examples.
- Components connect to Azure using service principal authentication for which an application was created in the Azure portal. See Provide applications access to Azure Stack.
- Provide Azure IAM permission to the application. See Configure Azure IAM permissions for cloud monitoring in the SolarWinds Platform.
- Script fetch data is based on time range given in last script arguments. By default, scripts fetch data for the past 1 hour. While giving time range, make sure data is available for the metric at that time otherwise components cannot fetch data.
- Run scripts with Admin privileges.
-
See the following Microsoft links for reference (© 2021 Microsoft Corp., available at docs.microsoft.com, obtained on May 14, 2021):
- This template was tested with AzureRM Module 6.9.0.
Component monitors
Average number of bytes sent
Provides the average number of bytes sent for the given app.
Unit: MB (megabytes)
Total number of 2xx requests
Provides the count of requests resulting in an HTTP status code >= 200 but < 300 for the given app.
Unit: Count
Total number of 3xx requests
This monitor provides the count of requests resulting in an HTTP status code >= 300 but < 400 for the given app.
Unit: Count
Total number of 401 requests
Provides the count of requests resulting in HTTP 401 status code for the given app.
Unit: Count
Total number of 403 requests
Provides the count of requests resulting in HTTP 403 status code for the given app.
Unit: Count
Total number of 404 requests
Provides the count of requests resulting in HTTP 404 status code for the given.
Unit: Count
Total number of 406 requests
Provides the count of requests resulting in HTTP 406 status code for the given.
Unit: Count
Total number of 4xx requests
Provides the count of requests resulting in an HTTP status code >= 400 but < 500 for the given app.
Unit: Count
Total number of 5xx requests
Provides the count of requests resulting in an HTTP status code >= 500 but < 600 for the given app.
Unit: Count
Total number of requests served by the app
Provides the total number of requests regardless of their resulting HTTP status code for the given app.
Unit: Count
Average number of bytes received
Provides the average number of bytes received for the given app.
Unit: MB (megabytes)
Average memory used
Provides the average amount of memory in MiBs used by the app.
Unit: MB (megabytes)
Average response time
This monitor provides the average time taken for the app to serve requests in ms.
Unit: ms (milliseconds)