Note
Access to this page requires authorization. You can try signing in or .
Access to this page requires authorization. You can try .
Microsoft.Insights webtests
Bicep resource definition
The webtests resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.Insights/webtests resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.Insights/webtests@2022-06-15' = {
kind: 'string'
location: 'string'
name: 'string'
properties: {
Configuration: {
WebTest: 'string'
}
Description: 'string'
Enabled: bool
Frequency: int
Kind: 'string'
Locations: [
{
Id: 'string'
}
]
Name: 'string'
Request: {
FollowRedirects: bool
Headers: [
{
key: 'string'
value: 'string'
}
]
HttpVerb: 'string'
ParseDependentRequests: bool
RequestBody: 'string'
RequestUrl: 'string'
}
RetryEnabled: bool
SyntheticMonitorId: 'string'
Timeout: int
ValidationRules: {
ContentValidation: {
ContentMatch: 'string'
IgnoreCase: bool
PassIfTextFound: bool
}
ExpectedHttpStatusCode: int
IgnoreHttpStatusCode: bool
SSLCertRemainingLifetimeCheck: int
SSLCheck: bool
}
}
tags: {
{customized property}: 'string'
}
}
Property Values
Microsoft.Insights/webtests
| Name | Description | Value |
|---|---|---|
| kind | The kind of WebTest that this web test watches. Choices are ping, multistep and standard. | 'multistep' 'ping' 'standard' |
| location | Resource location | string (required) |
| name | The resource name | string (required) |
| properties | Metadata describing a web test for an Azure resource. | WebTestProperties |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
HeaderField
| Name | Description | Value |
|---|---|---|
| key | The name of the header. | string |
| value | The value of the header. | string |
WebTestGeolocation
| Name | Description | Value |
|---|---|---|
| Id | Location ID for the WebTest to run from. | string |
WebTestProperties
| Name | Description | Value |
|---|---|---|
| Configuration | An XML configuration specification for a WebTest. | WebTestPropertiesConfiguration |
| Description | User defined description for this WebTest. | string |
| Enabled | Is the test actively being monitored. | bool |
| Frequency | Interval in seconds between test runs for this WebTest. Default value is 300. | int |
| Kind | The kind of web test this is, valid choices are ping, multistep and standard. | 'multistep' 'ping' 'standard' (required) |
| Locations | A list of where to physically run the tests from to give global coverage for accessibility of your application. | WebTestGeolocation[] (required) |
| Name | User defined name if this WebTest. | string (required) |
| Request | The collection of request properties | WebTestPropertiesRequest |
| RetryEnabled | Allow for retries should this WebTest fail. | bool |
| SyntheticMonitorId | Unique ID of this WebTest. This is typically the same value as the Name field. | string (required) |
| Timeout | Seconds until this WebTest will timeout and fail. Default value is 30. | int |
| ValidationRules | The collection of validation rule properties | WebTestPropertiesValidationRules |
WebTestPropertiesConfiguration
| Name | Description | Value |
|---|---|---|
| WebTest | The XML specification of a WebTest to run against an application. | string |
WebTestPropertiesRequest
| Name | Description | Value |
|---|---|---|
| FollowRedirects | Follow redirects for this web test. | bool |
| Headers | List of headers and their values to add to the WebTest call. | HeaderField[] |
| HttpVerb | Http verb to use for this web test. | string |
| ParseDependentRequests | Parse Dependent request for this WebTest. | bool |
| RequestBody | Base64 encoded string body to send with this web test. | string |
| RequestUrl | Url location to test. | string |
WebTestPropertiesValidationRules
| Name | Description | Value |
|---|---|---|
| ContentValidation | The collection of content validation properties | WebTestPropertiesValidationRulesContentValidation |
| ExpectedHttpStatusCode | Validate that the WebTest returns the http status code provided. | int |
| IgnoreHttpStatusCode | When set, validation will ignore the status code. | bool |
| SSLCertRemainingLifetimeCheck | A number of days to check still remain before the the existing SSL cert expires. Value must be positive and the SSLCheck must be set to true. | int |
| SSLCheck | Checks to see if the SSL cert is still valid. | bool |
WebTestPropertiesValidationRulesContentValidation
| Name | Description | Value |
|---|---|---|
| ContentMatch | Content to look for in the return of the WebTest. Must not be null or empty. | string |
| IgnoreCase | When set, this value makes the ContentMatch validation case insensitive. | bool |
| PassIfTextFound | When true, validation will pass if there is a match for the ContentMatch string. If false, validation will fail if there is a match | bool |
WebtestsResourceTags
| Name | Description | Value |
|---|
Usage Examples
Bicep Samples
A basic example of deploying Application Insights Standard WebTest.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource component 'Microsoft.Insights/components@2020-02-02' = {
name: resourceName
location: location
kind: 'web'
properties: {
Application_Type: 'web'
DisableIpMasking: false
DisableLocalAuth: false
ForceCustomerStorageForProfiler: false
RetentionInDays: 90
SamplingPercentage: 100
publicNetworkAccessForIngestion: 'Enabled'
publicNetworkAccessForQuery: 'Enabled'
}
}
resource webTest 'Microsoft.Insights/webTests@2022-06-15' = {
name: resourceName
location: location
kind: 'standard'
properties: {
Description: ''
Enabled: false
Frequency: 300
Kind: 'standard'
Locations: [
{
Id: 'us-tx-sn1-azr'
}
]
Name: resourceName
Request: {
FollowRedirects: false
Headers: [
{
key: 'x-header'
value: 'testheader'
}
{
key: 'x-header-2'
value: 'testheader2'
}
]
HttpVerb: 'GET'
ParseDependentRequests: false
RequestUrl: 'http://microsoft.com'
}
RetryEnabled: false
SyntheticMonitorId: resourceName
Timeout: 30
ValidationRules: {
ExpectedHttpStatusCode: 200
SSLCheck: false
}
}
tags: {
'hidden-link:${component.id}': 'Resource'
}
}
Azure Verified Modules
The following Azure Verified Modules can be used to deploy this resource type.
| Module | Description |
|---|---|
| Web Test | AVM Resource Module for Web Test |
ARM template resource definition
The webtests resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.Insights/webtests resource, add the following JSON to your template.
{
"type": "Microsoft.Insights/webtests",
"apiVersion": "2022-06-15",
"name": "string",
"kind": "string",
"location": "string",
"properties": {
"Configuration": {
"WebTest": "string"
},
"Description": "string",
"Enabled": "bool",
"Frequency": "int",
"Kind": "string",
"Locations": [
{
"Id": "string"
}
],
"Name": "string",
"Request": {
"FollowRedirects": "bool",
"Headers": [
{
"key": "string",
"value": "string"
}
],
"HttpVerb": "string",
"ParseDependentRequests": "bool",
"RequestBody": "string",
"RequestUrl": "string"
},
"RetryEnabled": "bool",
"SyntheticMonitorId": "string",
"Timeout": "int",
"ValidationRules": {
"ContentValidation": {
"ContentMatch": "string",
"IgnoreCase": "bool",
"PassIfTextFound": "bool"
},
"ExpectedHttpStatusCode": "int",
"IgnoreHttpStatusCode": "bool",
"SSLCertRemainingLifetimeCheck": "int",
"SSLCheck": "bool"
}
},
"tags": {
"{customized property}": "string"
}
}
Property Values
Microsoft.Insights/webtests
| Name | Description | Value |
|---|---|---|
| apiVersion | The api version | '2022-06-15' |
| kind | The kind of WebTest that this web test watches. Choices are ping, multistep and standard. | 'multistep' 'ping' 'standard' |
| location | Resource location | string (required) |
| name | The resource name | string (required) |
| properties | Metadata describing a web test for an Azure resource. | WebTestProperties |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
| type | The resource type | 'Microsoft.Insights/webtests' |
HeaderField
| Name | Description | Value |
|---|---|---|
| key | The name of the header. | string |
| value | The value of the header. | string |
WebTestGeolocation
| Name | Description | Value |
|---|---|---|
| Id | Location ID for the WebTest to run from. | string |
WebTestProperties
| Name | Description | Value |
|---|---|---|
| Configuration | An XML configuration specification for a WebTest. | WebTestPropertiesConfiguration |
| Description | User defined description for this WebTest. | string |
| Enabled | Is the test actively being monitored. | bool |
| Frequency | Interval in seconds between test runs for this WebTest. Default value is 300. | int |
| Kind | The kind of web test this is, valid choices are ping, multistep and standard. | 'multistep' 'ping' 'standard' (required) |
| Locations | A list of where to physically run the tests from to give global coverage for accessibility of your application. | WebTestGeolocation[] (required) |
| Name | User defined name if this WebTest. | string (required) |
| Request | The collection of request properties | WebTestPropertiesRequest |
| RetryEnabled | Allow for retries should this WebTest fail. | bool |
| SyntheticMonitorId | Unique ID of this WebTest. This is typically the same value as the Name field. | string (required) |
| Timeout | Seconds until this WebTest will timeout and fail. Default value is 30. | int |
| ValidationRules | The collection of validation rule properties | WebTestPropertiesValidationRules |
WebTestPropertiesConfiguration
| Name | Description | Value |
|---|---|---|
| WebTest | The XML specification of a WebTest to run against an application. | string |
WebTestPropertiesRequest
| Name | Description | Value |
|---|---|---|
| FollowRedirects | Follow redirects for this web test. | bool |
| Headers | List of headers and their values to add to the WebTest call. | HeaderField[] |
| HttpVerb | Http verb to use for this web test. | string |
| ParseDependentRequests | Parse Dependent request for this WebTest. | bool |
| RequestBody | Base64 encoded string body to send with this web test. | string |
| RequestUrl | Url location to test. | string |
WebTestPropertiesValidationRules
| Name | Description | Value |
|---|---|---|
| ContentValidation | The collection of content validation properties | WebTestPropertiesValidationRulesContentValidation |
| ExpectedHttpStatusCode | Validate that the WebTest returns the http status code provided. | int |
| IgnoreHttpStatusCode | When set, validation will ignore the status code. | bool |
| SSLCertRemainingLifetimeCheck | A number of days to check still remain before the the existing SSL cert expires. Value must be positive and the SSLCheck must be set to true. | int |
| SSLCheck | Checks to see if the SSL cert is still valid. | bool |
WebTestPropertiesValidationRulesContentValidation
| Name | Description | Value |
|---|---|---|
| ContentMatch | Content to look for in the return of the WebTest. Must not be null or empty. | string |
| IgnoreCase | When set, this value makes the ContentMatch validation case insensitive. | bool |
| PassIfTextFound | When true, validation will pass if there is a match for the ContentMatch string. If false, validation will fail if there is a match | bool |
WebtestsResourceTags
| Name | Description | Value |
|---|
Usage Examples
Azure Quickstart Templates
The following Azure Quickstart templates deploy this resource type.
| Template | Description |
|---|---|
| Dynamic Web Test Creation 👁 Deploy to Azure |
Create any number of App Insights web (ping) tests. |
| Metric alert rule for an availability test 👁 Deploy to Azure |
This template creates an Application Insights availability test along with a metric alert rule that monitors it. |
Terraform (AzAPI provider) resource definition
The webtests resource type can be deployed with operations that target:
- Resource groups
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.Insights/webtests resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Insights/webtests@2022-06-15"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
kind = "string"
properties = {
Configuration = {
WebTest = "string"
}
Description = "string"
Enabled = bool
Frequency = int
Kind = "string"
Locations = [
{
Id = "string"
}
]
Name = "string"
Request = {
FollowRedirects = bool
Headers = [
{
key = "string"
value = "string"
}
]
HttpVerb = "string"
ParseDependentRequests = bool
RequestBody = "string"
RequestUrl = "string"
}
RetryEnabled = bool
SyntheticMonitorId = "string"
Timeout = int
ValidationRules = {
ContentValidation = {
ContentMatch = "string"
IgnoreCase = bool
PassIfTextFound = bool
}
ExpectedHttpStatusCode = int
IgnoreHttpStatusCode = bool
SSLCertRemainingLifetimeCheck = int
SSLCheck = bool
}
}
}
}
Property Values
Microsoft.Insights/webtests
| Name | Description | Value |
|---|---|---|
| kind | The kind of WebTest that this web test watches. Choices are ping, multistep and standard. | 'multistep' 'ping' 'standard' |
| location | Resource location | string (required) |
| name | The resource name | string (required) |
| properties | Metadata describing a web test for an Azure resource. | WebTestProperties |
| tags | Resource tags | Dictionary of tag names and values. |
| type | The resource type | "Microsoft.Insights/webtests@2022-06-15" |
HeaderField
| Name | Description | Value |
|---|---|---|
| key | The name of the header. | string |
| value | The value of the header. | string |
WebTestGeolocation
| Name | Description | Value |
|---|---|---|
| Id | Location ID for the WebTest to run from. | string |
WebTestProperties
| Name | Description | Value |
|---|---|---|
| Configuration | An XML configuration specification for a WebTest. | WebTestPropertiesConfiguration |
| Description | User defined description for this WebTest. | string |
| Enabled | Is the test actively being monitored. | bool |
| Frequency | Interval in seconds between test runs for this WebTest. Default value is 300. | int |
| Kind | The kind of web test this is, valid choices are ping, multistep and standard. | 'multistep' 'ping' 'standard' (required) |
| Locations | A list of where to physically run the tests from to give global coverage for accessibility of your application. | WebTestGeolocation[] (required) |
| Name | User defined name if this WebTest. | string (required) |
| Request | The collection of request properties | WebTestPropertiesRequest |
| RetryEnabled | Allow for retries should this WebTest fail. | bool |
| SyntheticMonitorId | Unique ID of this WebTest. This is typically the same value as the Name field. | string (required) |
| Timeout | Seconds until this WebTest will timeout and fail. Default value is 30. | int |
| ValidationRules | The collection of validation rule properties | WebTestPropertiesValidationRules |
WebTestPropertiesConfiguration
| Name | Description | Value |
|---|---|---|
| WebTest | The XML specification of a WebTest to run against an application. | string |
WebTestPropertiesRequest
| Name | Description | Value |
|---|---|---|
| FollowRedirects | Follow redirects for this web test. | bool |
| Headers | List of headers and their values to add to the WebTest call. | HeaderField[] |
| HttpVerb | Http verb to use for this web test. | string |
| ParseDependentRequests | Parse Dependent request for this WebTest. | bool |
| RequestBody | Base64 encoded string body to send with this web test. | string |
| RequestUrl | Url location to test. | string |
WebTestPropertiesValidationRules
| Name | Description | Value |
|---|---|---|
| ContentValidation | The collection of content validation properties | WebTestPropertiesValidationRulesContentValidation |
| ExpectedHttpStatusCode | Validate that the WebTest returns the http status code provided. | int |
| IgnoreHttpStatusCode | When set, validation will ignore the status code. | bool |
| SSLCertRemainingLifetimeCheck | A number of days to check still remain before the the existing SSL cert expires. Value must be positive and the SSLCheck must be set to true. | int |
| SSLCheck | Checks to see if the SSL cert is still valid. | bool |
WebTestPropertiesValidationRulesContentValidation
| Name | Description | Value |
|---|---|---|
| ContentMatch | Content to look for in the return of the WebTest. Must not be null or empty. | string |
| IgnoreCase | When set, this value makes the ContentMatch validation case insensitive. | bool |
| PassIfTextFound | When true, validation will pass if there is a match for the ContentMatch string. If false, validation will fail if there is a match | bool |
WebtestsResourceTags
| Name | Description | Value |
|---|
Usage Examples
Terraform Samples
A basic example of deploying Application Insights Standard WebTest.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "component" {
type = "Microsoft.Insights/components@2020-02-02"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
kind = "web"
properties = {
Application_Type = "web"
DisableIpMasking = false
DisableLocalAuth = false
ForceCustomerStorageForProfiler = false
RetentionInDays = 90
SamplingPercentage = 100
publicNetworkAccessForIngestion = "Enabled"
publicNetworkAccessForQuery = "Enabled"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "webTest" {
type = "Microsoft.Insights/webTests@2022-06-15"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
kind = "standard"
properties = {
Description = ""
Enabled = false
Frequency = 300
Kind = "standard"
Locations = [
{
Id = "us-tx-sn1-azr"
},
]
Name = var.resource_name
Request = {
FollowRedirects = false
Headers = [
{
key = "x-header"
value = "testheader"
},
{
key = "x-header-2"
value = "testheader2"
},
]
HttpVerb = "GET"
ParseDependentRequests = false
RequestUrl = "http://microsoft.com"
}
RetryEnabled = false
SyntheticMonitorId = var.resource_name
Timeout = 30
ValidationRules = {
ExpectedHttpStatusCode = 200
SSLCheck = false
}
}
tags = {
"hidden-link:${azapi_resource.component.id}" = "Resource"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
Feedback
Was this page helpful?
