Определение ресурсов Bicep
Тип ресурса webtests можно развернуть с помощью операций, предназначенных для следующих целей:
Список измененных свойств в каждой версии API см. в журнала изменений.
Примеры использования
Примеры Bicep
Простой пример развертывания стандартного веб-теста Application Insights.
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
Следующие проверенные модули Azure можно использовать для развертывания этого типа ресурсов.
| Модуль |
Описание |
|
веб-тест |
Модуль ресурсов AVM для веб-теста |
Чтобы создать ресурс Microsoft.Insights/webtests, добавьте следующий 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'
}
}
Значения свойств
Microsoft.Insights/веб-тесты
| Имя |
Описание |
Ценность |
| добрый |
Тип WebTest, который просматривает этот веб-тест. Выбор — это связь, многоэтапная и стандартная. |
"Multistep" "ping" "Стандартный" |
| местоположение |
Расположение ресурса |
строка (обязательно) |
| имя |
Имя ресурса |
строка (обязательно) |
| свойства |
Метаданные, описывающие веб-тест для ресурса Azure. |
Свойства WebTestProperties |
| Теги |
Теги ресурсов |
Словарь имен и значений тегов. См. теги в шаблонах |
| Имя |
Описание |
Ценность |
| ключ |
Имя заголовка. |
струна |
| ценность |
Значение заголовка. |
струна |
ВебТестГеолокация
| Имя |
Описание |
Ценность |
| Идентификатор |
Идентификатор расположения для запуска WebTest. |
струна |
Свойства WebTestProperties
| Имя |
Описание |
Ценность |
| Конфигурация |
Спецификация конфигурации XML для WebTest. |
WebTestPropertiesConfiguration |
| Описание |
Определяемое пользователем описание этого webTest. |
струна |
| Включен |
Выполняется активное наблюдение за тестом. |
булевая переменная (bool) |
| Частота |
Интервал в секундах между выполнением тестов для этого webTest. Значение по умолчанию — 300. |
инт |
| Добрый |
Тип веб-теста это, допустимые варианты: ping, multistep и standard. |
"Multistep" "ping" "Стандартный" (обязательный) |
| Местонахождения |
Список мест, где физически выполнять тесты, чтобы предоставить глобальное покрытие для специальных возможностей вашего приложения. |
WebTestGeolocation[] (обязательно) |
| Имя |
Определяемое пользователем имя, если этот WebTest. |
строка (обязательно) |
| Просьба |
Коллекция свойств запроса |
Запрос WebTestProperties |
| RetryEnabled |
Разрешить повторные попытки в случае сбоя WebTest. |
булевая переменная (bool) |
| Синтетический MonitorId |
Уникальный идентификатор этого веб-теста. Обычно это значение совпадает с полем "Имя". |
строка (обязательно) |
| Времени ожидания |
Секунды, пока этот веб-тест не завершится временем ожидания и завершится сбоем. Значение по умолчанию — 30. |
инт |
| Правила валидации |
Коллекция свойств правила проверки |
WebTestPropertiesValidationRules |
WebTestPropertiesConfiguration
| Имя |
Описание |
Ценность |
| Веб-тест |
Спецификация XML веб-теста для запуска в приложении. |
струна |
Запрос WebTestProperties
| Имя |
Описание |
Ценность |
| Следуйте указаниям |
Следуйте перенаправлениям для этого веб-теста. |
булевая переменная (bool) |
| Заголовки |
Список заголовков и их значений для добавления в вызов WebTest. |
Поле заголовка[] |
| HttpVerb |
Http-команда, используемая для этого веб-теста. |
струна |
| ParseDependentRequests |
Анализ зависимого запроса для этого webTest. |
булевая переменная (bool) |
| ТелоЗапроса |
Текст строки в кодировке Base64 для отправки с помощью этого веб-теста. |
струна |
| URL-запрос |
Расположение URL-адреса для тестирования. |
струна |
WebTestPropertiesValidationRules
| Имя |
Описание |
Ценность |
| Проверка содержимого |
Коллекция свойств проверки содержимого |
WebTestPropertiesValidationRulesContentValidation |
| ОжидаемыйHttpStatusCode (Ожидаемый HttpStatusCode) |
Убедитесь, что WebTest возвращает предоставленный код состояния HTTP. |
инт |
| Игнорируйте HttpStatusCode |
При установке проверка будет игнорировать код состояния. |
булевая переменная (bool) |
| SSLCertRemainingLifetimeCheck |
Количество дней для проверки по-прежнему остается до истечения срока действия существующего SSL-сертификата. Значение должно быть положительным, а sslcheck должно иметь значение true. |
инт |
| SSLCheck |
Проверяет, является ли SSL-сертификат допустимым. |
булевая переменная (bool) |
WebTestPropertiesValidationRulesContentValidation
| Имя |
Описание |
Ценность |
| ContentMatch (КонтентМатч) |
Содержимое для поиска в возврате WebTest. Не должно быть пустым или пустым. |
струна |
| ИгнорКейс |
Если задано, это значение не учитывает регистр проверки ContentMatch. |
булевая переменная (bool) |
| PassIfTextFound |
Если значение true, проверка будет проходить, если для строки ContentMatch имеется совпадение. Если значение false, проверка завершится ошибкой при наличии совпадения |
булевая переменная (bool) |
Определение ресурса шаблона ARM
Тип ресурса webtests можно развернуть с помощью операций, предназначенных для следующих целей:
Примеры использования
Шаблоны быстрого запуска Azure
Следующие шаблоны быстрого запуска Azure развернуть этот тип ресурса.
| Шаблон |
Описание |
создание динамического веб-теста
развертывание  |
Создайте любое количество тестов Web Insights (ping). |
правило генерации оповещений метрик для теста доступности
развертывание  |
Этот шаблон создает тест доступности Application Insights вместе с правилом генерации оповещений метрик, отслеживающим его. |
Чтобы создать ресурс Microsoft.Insights/webtests, добавьте следующий код JSON в шаблон.
{
"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"
}
}
Значения свойств
Microsoft.Insights/веб-тесты
| Имя |
Описание |
Ценность |
| apiVersion |
Версия API |
'2022-06-15' |
| добрый |
Тип WebTest, который просматривает этот веб-тест. Выбор — это связь, многоэтапная и стандартная. |
"Multistep" "ping" "Стандартный" |
| местоположение |
Расположение ресурса |
строка (обязательно) |
| имя |
Имя ресурса |
строка (обязательно) |
| свойства |
Метаданные, описывающие веб-тест для ресурса Azure. |
Свойства WebTestProperties |
| Теги |
Теги ресурсов |
Словарь имен и значений тегов. См. теги в шаблонах |
| тип |
Тип ресурса |
"Microsoft.Insights/webtests" |
| Имя |
Описание |
Ценность |
| ключ |
Имя заголовка. |
струна |
| ценность |
Значение заголовка. |
струна |
ВебТестГеолокация
| Имя |
Описание |
Ценность |
| Идентификатор |
Идентификатор расположения для запуска WebTest. |
струна |
Свойства WebTestProperties
| Имя |
Описание |
Ценность |
| Конфигурация |
Спецификация конфигурации XML для WebTest. |
WebTestPropertiesConfiguration |
| Описание |
Определяемое пользователем описание этого webTest. |
струна |
| Включен |
Выполняется активное наблюдение за тестом. |
булевая переменная (bool) |
| Частота |
Интервал в секундах между выполнением тестов для этого webTest. Значение по умолчанию — 300. |
инт |
| Добрый |
Тип веб-теста это, допустимые варианты: ping, multistep и standard. |
"Multistep" "ping" "Стандартный" (обязательный) |
| Местонахождения |
Список мест, где физически выполнять тесты, чтобы предоставить глобальное покрытие для специальных возможностей вашего приложения. |
WebTestGeolocation[] (обязательно) |
| Имя |
Определяемое пользователем имя, если этот WebTest. |
строка (обязательно) |
| Просьба |
Коллекция свойств запроса |
Запрос WebTestProperties |
| RetryEnabled |
Разрешить повторные попытки в случае сбоя WebTest. |
булевая переменная (bool) |
| Синтетический MonitorId |
Уникальный идентификатор этого веб-теста. Обычно это значение совпадает с полем "Имя". |
строка (обязательно) |
| Времени ожидания |
Секунды, пока этот веб-тест не завершится временем ожидания и завершится сбоем. Значение по умолчанию — 30. |
инт |
| Правила валидации |
Коллекция свойств правила проверки |
WebTestPropertiesValidationRules |
WebTestPropertiesConfiguration
| Имя |
Описание |
Ценность |
| Веб-тест |
Спецификация XML веб-теста для запуска в приложении. |
струна |
Запрос WebTestProperties
| Имя |
Описание |
Ценность |
| Следуйте указаниям |
Следуйте перенаправлениям для этого веб-теста. |
булевая переменная (bool) |
| Заголовки |
Список заголовков и их значений для добавления в вызов WebTest. |
Поле заголовка[] |
| HttpVerb |
Http-команда, используемая для этого веб-теста. |
струна |
| ParseDependentRequests |
Анализ зависимого запроса для этого webTest. |
булевая переменная (bool) |
| ТелоЗапроса |
Текст строки в кодировке Base64 для отправки с помощью этого веб-теста. |
струна |
| URL-запрос |
Расположение URL-адреса для тестирования. |
струна |
WebTestPropertiesValidationRules
| Имя |
Описание |
Ценность |
| Проверка содержимого |
Коллекция свойств проверки содержимого |
WebTestPropertiesValidationRulesContentValidation |
| ОжидаемыйHttpStatusCode (Ожидаемый HttpStatusCode) |
Убедитесь, что WebTest возвращает предоставленный код состояния HTTP. |
инт |
| Игнорируйте HttpStatusCode |
При установке проверка будет игнорировать код состояния. |
булевая переменная (bool) |
| SSLCertRemainingLifetimeCheck |
Количество дней для проверки по-прежнему остается до истечения срока действия существующего SSL-сертификата. Значение должно быть положительным, а sslcheck должно иметь значение true. |
инт |
| SSLCheck |
Проверяет, является ли SSL-сертификат допустимым. |
булевая переменная (bool) |
WebTestPropertiesValidationRulesContentValidation
| Имя |
Описание |
Ценность |
| ContentMatch (КонтентМатч) |
Содержимое для поиска в возврате WebTest. Не должно быть пустым или пустым. |
струна |
| ИгнорКейс |
Если задано, это значение не учитывает регистр проверки ContentMatch. |
булевая переменная (bool) |
| PassIfTextFound |
Если значение true, проверка будет проходить, если для строки ContentMatch имеется совпадение. Если значение false, проверка завершится ошибкой при наличии совпадения |
булевая переменная (bool) |
Тип ресурса webtests можно развернуть с помощью операций, предназначенных для следующих целей:
-
Группы ресурсов Список изменённых свойств в каждой версии API см. журнал изменений.
Примеры использования
Простой пример развертывания стандартного веб-теста Application Insights.
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 = ["*"]
}
Чтобы создать ресурс Microsoft.Insights/webtests, добавьте следующий объект Terraform в шаблон.
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
}
}
}
}
Значения свойств
Microsoft.Insights/веб-тесты
| Имя |
Описание |
Ценность |
| добрый |
Тип WebTest, который просматривает этот веб-тест. Выбор — это связь, многоэтапная и стандартная. |
"Multistep" "ping" "Стандартный" |
| местоположение |
Расположение ресурса |
строка (обязательно) |
| имя |
Имя ресурса |
строка (обязательно) |
| свойства |
Метаданные, описывающие веб-тест для ресурса Azure. |
Свойства WebTestProperties |
| Теги |
Теги ресурсов |
Словарь имен и значений тегов. |
| тип |
Тип ресурса |
"Microsoft.Insights/webtests@2022-06-15" |
| Имя |
Описание |
Ценность |
| ключ |
Имя заголовка. |
струна |
| ценность |
Значение заголовка. |
струна |
ВебТестГеолокация
| Имя |
Описание |
Ценность |
| Идентификатор |
Идентификатор расположения для запуска WebTest. |
струна |
Свойства WebTestProperties
| Имя |
Описание |
Ценность |
| Конфигурация |
Спецификация конфигурации XML для WebTest. |
WebTestPropertiesConfiguration |
| Описание |
Определяемое пользователем описание этого webTest. |
струна |
| Включен |
Выполняется активное наблюдение за тестом. |
булевая переменная (bool) |
| Частота |
Интервал в секундах между выполнением тестов для этого webTest. Значение по умолчанию — 300. |
инт |
| Добрый |
Тип веб-теста это, допустимые варианты: ping, multistep и standard. |
"Multistep" "ping" "Стандартный" (обязательный) |
| Местонахождения |
Список мест, где физически выполнять тесты, чтобы предоставить глобальное покрытие для специальных возможностей вашего приложения. |
WebTestGeolocation[] (обязательно) |
| Имя |
Определяемое пользователем имя, если этот WebTest. |
строка (обязательно) |
| Просьба |
Коллекция свойств запроса |
Запрос WebTestProperties |
| RetryEnabled |
Разрешить повторные попытки в случае сбоя WebTest. |
булевая переменная (bool) |
| Синтетический MonitorId |
Уникальный идентификатор этого веб-теста. Обычно это значение совпадает с полем "Имя". |
строка (обязательно) |
| Времени ожидания |
Секунды, пока этот веб-тест не завершится временем ожидания и завершится сбоем. Значение по умолчанию — 30. |
инт |
| Правила валидации |
Коллекция свойств правила проверки |
WebTestPropertiesValidationRules |
WebTestPropertiesConfiguration
| Имя |
Описание |
Ценность |
| Веб-тест |
Спецификация XML веб-теста для запуска в приложении. |
струна |
Запрос WebTestProperties
| Имя |
Описание |
Ценность |
| Следуйте указаниям |
Следуйте перенаправлениям для этого веб-теста. |
булевая переменная (bool) |
| Заголовки |
Список заголовков и их значений для добавления в вызов WebTest. |
Поле заголовка[] |
| HttpVerb |
Http-команда, используемая для этого веб-теста. |
струна |
| ParseDependentRequests |
Анализ зависимого запроса для этого webTest. |
булевая переменная (bool) |
| ТелоЗапроса |
Текст строки в кодировке Base64 для отправки с помощью этого веб-теста. |
струна |
| URL-запрос |
Расположение URL-адреса для тестирования. |
струна |
WebTestPropertiesValidationRules
| Имя |
Описание |
Ценность |
| Проверка содержимого |
Коллекция свойств проверки содержимого |
WebTestPropertiesValidationRulesContentValidation |
| ОжидаемыйHttpStatusCode (Ожидаемый HttpStatusCode) |
Убедитесь, что WebTest возвращает предоставленный код состояния HTTP. |
инт |
| Игнорируйте HttpStatusCode |
При установке проверка будет игнорировать код состояния. |
булевая переменная (bool) |
| SSLCertRemainingLifetimeCheck |
Количество дней для проверки по-прежнему остается до истечения срока действия существующего SSL-сертификата. Значение должно быть положительным, а sslcheck должно иметь значение true. |
инт |
| SSLCheck |
Проверяет, является ли SSL-сертификат допустимым. |
булевая переменная (bool) |
WebTestPropertiesValidationRulesContentValidation
| Имя |
Описание |
Ценность |
| ContentMatch (КонтентМатч) |
Содержимое для поиска в возврате WebTest. Не должно быть пустым или пустым. |
струна |
| ИгнорКейс |
Если задано, это значение не учитывает регистр проверки ContentMatch. |
булевая переменная (bool) |
| PassIfTextFound |
Если значение true, проверка будет проходить, если для строки ContentMatch имеется совпадение. Если значение false, проверка завершится ошибкой при наличии совпадения |
булевая переменная (bool) |