Как написать веб-тест с новым предупреждением в шаблоне ресурса Azure? - PullRequest
0 голосов
/ 12 февраля 2019

С переходом классического оповещения на новое оповещение.

У меня есть пинг-URL «Microsoft.Insights / webtest» в тестах доступности Azure.

Старый тип оповещения - «Microsoft.Insights»./alertrules".

Тип условия: «Microsoft.Azure.Management.Insights.Models.LocationThresholdRuleCondition».

Старое имя-метрики - «GSMT_AvRaW».

Какнаписать новое оповещение (почти в реальном времени) или как писать в веб-тесты в ручном режиме?

Когда я добавляю новый тест в доступности, я могу переключить Классический тип оповещения на Near-realtime. Он будет генерировать оповещение.

AddNewTestAlert

И я не могу добавить условие «Новое оповещение» для веб-теста, я могу только нажать кнопку «Изменить оповещение», чтобы изменить оповещение.Потому что при добавлении нового оповещения нельзя выбрать тип метрики в условии.

Ответы [ 2 ]

0 голосов
/ 24 апреля 2019

Если вы посмотрите на Resource Explorer и перейдете к вручную созданному (почти в реальном времени) предупреждению, вы должны увидеть объект "critera", определенный, как показано ниже.Вот полный пример ресурса, который, кажется, работает.Создайте несколько переменных для каждого из ваших значений:

{
  "type": "Microsoft.Insights/metricAlerts",
  "apiVersion": "2018-03-01",
  "name": "[variables('alertName')]",
  "location": "global",
  "dependsOn": [],
  "tags": {
    "[concat('hidden-link:', variables('applicationInsightsResourceId'))]": "Resource",
    "[concat('hidden-link:', variables('webtestResourceId'))]": "Resource"
  },
  "properties": {
    "description": "[concat('Alert for ', parameters('availibilityTestName'))]",
    "severity": 4,
    "enabled": true,
    "scopes": [
      "[variables('webtestResourceId')]",
      "[variables('applicationInsightsResourceId')]"
    ],
    "evaluationFrequency": "PT5M",
    "windowSize": "PT15M",
    "criteria": {
      "odata.type": "Microsoft.Azure.Monitor.WebtestLocationAvailabilityCriteria",
      "webTestId": "[variables('webtestResourceId')]",
      "componentId": "[variables('applicationInsightsResourceId')]",
      "failedLocationCount": 3
    },
    "actions": [
      {
        "actionGroupId": "[resourceId('microsoft.insights/actiongroups', 'webhook')]",
        "webHookProperties": {
           // Some properties to send to webhook
        }
      }
    ]
  }
}
0 голосов
/ 01 апреля 2019

Использование "odata.type": "Microsoft.Azure.Monitor.WebtestLocationAvailabilityCriteria" может аналогично работе со старым AvailabilityTest.

...