Webtests de Microsoft.Insights

Definición de recursos de Bicep

El tipo de recurso webtests se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.Insights/webtests, agregue lo siguiente a la plantilla de Bicep.

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'
  }
}

Valores de propiedad

Microsoft.Insights/webtests

Nombre Descripción Valor
amable Tipo de WebTest que esta prueba web supervisa. Las opciones son ping, multistep y estándar. "multistep"
'ping'
'estándar'
ubicación Ubicación del recurso string (obligatorio)
nombre El nombre del recurso string (obligatorio)
Propiedades Metadatos que describen una prueba web para un recurso de Azure. webTestProperties
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas

HeaderField

Nombre Descripción Valor
llave Nombre del encabezado. cuerda
valor Valor del encabezado. cuerda

WebTestGeolocalización

Nombre Descripción Valor
Identificación Id. de ubicación desde el que se va a ejecutar WebTest. cuerda

WebTestProperties

Nombre Descripción Valor
Configuración Una especificación de configuración XML para un WebTest. webTestPropertiesConfiguration
Descripción Descripción definida por el usuario para este WebTest. cuerda
Habilitado Es la prueba que se está supervisando activamente. Bool
Frecuencia Intervalo en segundos entre ejecuciones de pruebas para este WebTest. El valor predeterminado es 300. Int
Amable El tipo de prueba web es, las opciones válidas son ping, multistep y estándar. "multistep"
'ping'
'estándar' (obligatorio)
Ubicaciones Lista de dónde ejecutar físicamente las pruebas para proporcionar cobertura global para la accesibilidad de la aplicación. webTestGeolocation[] (obligatorio)
Nombre Nombre definido por el usuario si este WebTest. string (obligatorio)
Pedir Colección de propiedades de solicitud webTestPropertiesRequest
RetryEnabled Permitir reintentos debe producir un error en WebTest. Bool
SyntheticMonitorId Identificador único de este WebTest. Normalmente es el mismo valor que el campo Nombre. string (obligatorio)
Interrupción Segundos hasta que se produzca un tiempo de espera de WebTest y se produzca un error. El valor predeterminado es 30. Int
Reglas de validación Colección de propiedades de regla de validación WebTestPropertiesValidationRules

WebTestPropertiesConfiguration

Nombre Descripción Valor
Prueba web Especificación XML de un WebTest que se va a ejecutar en una aplicación. cuerda

WebTestPropertiesRequest

Nombre Descripción Valor
SeguirRedireccionamientos Siga las redirecciones para esta prueba web. Bool
Encabezados Lista de encabezados y sus valores que se van a agregar a la llamada a WebTest. HeaderField []
HttpVerb Verbo HTTP que se va a usar para esta prueba web. cuerda
ParseDependentRequests Analizar la solicitud dependiente de este WebTest. Bool
RequestBody Cuerpo de cadena codificado en Base64 para enviar con esta prueba web. cuerda
UrlDeSolicitud Ubicación de la dirección URL que se va a probar. cuerda

WebTestPropertiesValidationRules

Nombre Descripción Valor
ContentValidation (Validación de contenido) Colección de propiedades de validación de contenido webTestPropertiesValidationRulesContentValidation
ExpectedHttpStatusCode Compruebe que WebTest devuelve el código de estado HTTP proporcionado. Int
IgnoreHttpStatusCode Cuando se establece, la validación omitirá el código de estado. Bool
SSLCertRemainingLifetimeCheck Un número de días para comprobar aún permanece antes de que expire el certificado SSL existente. El valor debe ser positivo y SSLCheck debe establecerse en true. Int
SSLCeck Comprueba si el certificado SSL sigue siendo válido. Bool

WebTestPropertiesValidationRulesContentValidation

Nombre Descripción Valor
ContentMatch (Coincidencia de contenido) Contenido que se va a buscar en la devolución de WebTest. No debe ser null ni estar vacío. cuerda
IgnoreCase Cuando se establece, este valor hace que el caso de validación contentMatch no distingue mayúsculas de minúsculas. Bool
PassIfTextFound Cuando es true, la validación pasará si hay una coincidencia para la cadena ContentMatch. Si es false, se producirá un error en la validación si hay una coincidencia. Bool

WebtestsResourceTags

Nombre Descripción Valor

Ejemplos de uso

Ejemplos de Bicep

Un ejemplo básico de implementación de 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'
  }
}

Módulos comprobados de Azure

Los siguientes módulos comprobados de Azure se pueden usar para implementar este tipo de recurso.

Módulo Descripción
de pruebas web Módulo de recursos de AVM para pruebas web

Definición de recursos de plantilla de ARM

El tipo de recurso webtests se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.Insights/webtests, agregue el siguiente JSON a la plantilla.

{
  "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"
  }
}

Valores de propiedad

Microsoft.Insights/webtests

Nombre Descripción Valor
apiVersion La versión de api '2022-06-15'
amable Tipo de WebTest que esta prueba web supervisa. Las opciones son ping, multistep y estándar. "multistep"
'ping'
'estándar'
ubicación Ubicación del recurso string (obligatorio)
nombre El nombre del recurso string (obligatorio)
Propiedades Metadatos que describen una prueba web para un recurso de Azure. webTestProperties
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas
tipo El tipo de recurso "Microsoft.Insights/webtests"

HeaderField

Nombre Descripción Valor
llave Nombre del encabezado. cuerda
valor Valor del encabezado. cuerda

WebTestGeolocalización

Nombre Descripción Valor
Identificación Id. de ubicación desde el que se va a ejecutar WebTest. cuerda

WebTestProperties

Nombre Descripción Valor
Configuración Una especificación de configuración XML para un WebTest. webTestPropertiesConfiguration
Descripción Descripción definida por el usuario para este WebTest. cuerda
Habilitado Es la prueba que se está supervisando activamente. Bool
Frecuencia Intervalo en segundos entre ejecuciones de pruebas para este WebTest. El valor predeterminado es 300. Int
Amable El tipo de prueba web es, las opciones válidas son ping, multistep y estándar. "multistep"
'ping'
'estándar' (obligatorio)
Ubicaciones Lista de dónde ejecutar físicamente las pruebas para proporcionar cobertura global para la accesibilidad de la aplicación. webTestGeolocation[] (obligatorio)
Nombre Nombre definido por el usuario si este WebTest. string (obligatorio)
Pedir Colección de propiedades de solicitud webTestPropertiesRequest
RetryEnabled Permitir reintentos debe producir un error en WebTest. Bool
SyntheticMonitorId Identificador único de este WebTest. Normalmente es el mismo valor que el campo Nombre. string (obligatorio)
Interrupción Segundos hasta que se produzca un tiempo de espera de WebTest y se produzca un error. El valor predeterminado es 30. Int
Reglas de validación Colección de propiedades de regla de validación WebTestPropertiesValidationRules

WebTestPropertiesConfiguration

Nombre Descripción Valor
Prueba web Especificación XML de un WebTest que se va a ejecutar en una aplicación. cuerda

WebTestPropertiesRequest

Nombre Descripción Valor
SeguirRedireccionamientos Siga las redirecciones para esta prueba web. Bool
Encabezados Lista de encabezados y sus valores que se van a agregar a la llamada a WebTest. HeaderField []
HttpVerb Verbo HTTP que se va a usar para esta prueba web. cuerda
ParseDependentRequests Analizar la solicitud dependiente de este WebTest. Bool
RequestBody Cuerpo de cadena codificado en Base64 para enviar con esta prueba web. cuerda
UrlDeSolicitud Ubicación de la dirección URL que se va a probar. cuerda

WebTestPropertiesValidationRules

Nombre Descripción Valor
ContentValidation (Validación de contenido) Colección de propiedades de validación de contenido webTestPropertiesValidationRulesContentValidation
ExpectedHttpStatusCode Compruebe que WebTest devuelve el código de estado HTTP proporcionado. Int
IgnoreHttpStatusCode Cuando se establece, la validación omitirá el código de estado. Bool
SSLCertRemainingLifetimeCheck Un número de días para comprobar aún permanece antes de que expire el certificado SSL existente. El valor debe ser positivo y SSLCheck debe establecerse en true. Int
SSLCeck Comprueba si el certificado SSL sigue siendo válido. Bool

WebTestPropertiesValidationRulesContentValidation

Nombre Descripción Valor
ContentMatch (Coincidencia de contenido) Contenido que se va a buscar en la devolución de WebTest. No debe ser null ni estar vacío. cuerda
IgnoreCase Cuando se establece, este valor hace que el caso de validación contentMatch no distingue mayúsculas de minúsculas. Bool
PassIfTextFound Cuando es true, la validación pasará si hay una coincidencia para la cadena ContentMatch. Si es false, se producirá un error en la validación si hay una coincidencia. Bool

WebtestsResourceTags

Nombre Descripción Valor

Ejemplos de uso

Plantillas de inicio rápido de Azure

Los siguientes plantillas de inicio rápido de Azure implementar este tipo de recurso.

Plantilla Descripción
creación de pruebas web dinámicas

Implementación en Azure
Cree cualquier número de pruebas web (ping) de App Insights.
regla de alertas de métricas para un de prueba de disponibilidad

Implementación en Azure
Esta plantilla crea una prueba de disponibilidad de Application Insights junto con una regla de alertas de métricas que la supervisa.

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso webtests se puede implementar con operaciones destinadas a:

  • Grupos de recursos

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.Insights/webtests, agregue el siguiente terraform a la plantilla.

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
      }
    }
  }
}

Valores de propiedad

Microsoft.Insights/webtests

Nombre Descripción Valor
amable Tipo de WebTest que esta prueba web supervisa. Las opciones son ping, multistep y estándar. "multistep"
'ping'
'estándar'
ubicación Ubicación del recurso string (obligatorio)
nombre El nombre del recurso string (obligatorio)
Propiedades Metadatos que describen una prueba web para un recurso de Azure. webTestProperties
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta.
tipo El tipo de recurso "Microsoft.Insights/webtests@2022-06-15"

HeaderField

Nombre Descripción Valor
llave Nombre del encabezado. cuerda
valor Valor del encabezado. cuerda

WebTestGeolocalización

Nombre Descripción Valor
Identificación Id. de ubicación desde el que se va a ejecutar WebTest. cuerda

WebTestProperties

Nombre Descripción Valor
Configuración Una especificación de configuración XML para un WebTest. webTestPropertiesConfiguration
Descripción Descripción definida por el usuario para este WebTest. cuerda
Habilitado Es la prueba que se está supervisando activamente. Bool
Frecuencia Intervalo en segundos entre ejecuciones de pruebas para este WebTest. El valor predeterminado es 300. Int
Amable El tipo de prueba web es, las opciones válidas son ping, multistep y estándar. "multistep"
'ping'
'estándar' (obligatorio)
Ubicaciones Lista de dónde ejecutar físicamente las pruebas para proporcionar cobertura global para la accesibilidad de la aplicación. webTestGeolocation[] (obligatorio)
Nombre Nombre definido por el usuario si este WebTest. string (obligatorio)
Pedir Colección de propiedades de solicitud webTestPropertiesRequest
RetryEnabled Permitir reintentos debe producir un error en WebTest. Bool
SyntheticMonitorId Identificador único de este WebTest. Normalmente es el mismo valor que el campo Nombre. string (obligatorio)
Interrupción Segundos hasta que se produzca un tiempo de espera de WebTest y se produzca un error. El valor predeterminado es 30. Int
Reglas de validación Colección de propiedades de regla de validación WebTestPropertiesValidationRules

WebTestPropertiesConfiguration

Nombre Descripción Valor
Prueba web Especificación XML de un WebTest que se va a ejecutar en una aplicación. cuerda

WebTestPropertiesRequest

Nombre Descripción Valor
SeguirRedireccionamientos Siga las redirecciones para esta prueba web. Bool
Encabezados Lista de encabezados y sus valores que se van a agregar a la llamada a WebTest. HeaderField []
HttpVerb Verbo HTTP que se va a usar para esta prueba web. cuerda
ParseDependentRequests Analizar la solicitud dependiente de este WebTest. Bool
RequestBody Cuerpo de cadena codificado en Base64 para enviar con esta prueba web. cuerda
UrlDeSolicitud Ubicación de la dirección URL que se va a probar. cuerda

WebTestPropertiesValidationRules

Nombre Descripción Valor
ContentValidation (Validación de contenido) Colección de propiedades de validación de contenido webTestPropertiesValidationRulesContentValidation
ExpectedHttpStatusCode Compruebe que WebTest devuelve el código de estado HTTP proporcionado. Int
IgnoreHttpStatusCode Cuando se establece, la validación omitirá el código de estado. Bool
SSLCertRemainingLifetimeCheck Un número de días para comprobar aún permanece antes de que expire el certificado SSL existente. El valor debe ser positivo y SSLCheck debe establecerse en true. Int
SSLCeck Comprueba si el certificado SSL sigue siendo válido. Bool

WebTestPropertiesValidationRulesContentValidation

Nombre Descripción Valor
ContentMatch (Coincidencia de contenido) Contenido que se va a buscar en la devolución de WebTest. No debe ser null ni estar vacío. cuerda
IgnoreCase Cuando se establece, este valor hace que el caso de validación contentMatch no distingue mayúsculas de minúsculas. Bool
PassIfTextFound Cuando es true, la validación pasará si hay una coincidencia para la cadena ContentMatch. Si es false, se producirá un error en la validación si hay una coincidencia. Bool

WebtestsResourceTags

Nombre Descripción Valor

Ejemplos de uso

Ejemplos de Terraform

Un ejemplo básico de implementación de 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    = ["*"]
}