Udostępnij za pośrednictwem


Przykłady szablonów usługi Resource Manager dla reguł alertów kondycji usługi Azure Monitor

Ten artykuł zawiera przykłady szablonów usługi Azure Resource Manager do tworzenia i konfigurowania alertów dotyczących kondycji usługi w usłudze Azure Monitor.

Uwaga

Zobacz Przykłady usługi Azure Resource Manager dla usługi Azure Monitor, aby uzyskać listę dostępnych przykładów i wskazówki dotyczące wdrażania ich w ramach subskrypcji platformy Azure.

Szablon do tworzenia reguł alertów dotyczących kondycji usługi

Poniższy szablon tworzy regułę alertu kondycji usługi, która wysyła powiadomienia o zdarzeniach kondycji usługi dla subskrypcji docelowej. Zapisz ten szablon jako CreateServiceHealthAlert.json i zmodyfikuj go zgodnie z potrzebami.

Punkty do notatki:

  1. "Zakresy" reguły alertu kondycji usługi mogą zawierać tylko jedną subskrypcję, która musi być tą samą subskrypcją, w której jest tworzona reguła. Wiele subskrypcji, grupy zasobów lub innych typów zakresu nie jest obsługiwanych.
  2. Reguły alertów kondycji usługi można tworzyć tylko w lokalizacji "Globalne".
  3. "properties.incidentType", "properties.impactedServices[]. ServiceName" i "properties.impactedServices[]. ImpactedRegions[*]. Klauzule RegionName w warunku reguły są opcjonalne. Te klauzule można usunąć, aby otrzymywać powiadomienia o zdarzeniach wysyłanych dla wszystkich typów zdarzeń, wszystkich usług i/lub wszystkich regionów, odpowiednio.
  4. Nazwy usług używane w parametrze "properties.impactedServices[*]. ServiceName" musi być prawidłową nazwą usługi platformy Azure. Listę prawidłowych nazw można pobrać za pomocą interfejsu API Resource Health Metadata List.
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "actionGroups_name": {
      "type": "string",
      "defaultValue": "SubHealth"
    },
    "activityLogAlerts_name": {
      "type": "string",
      "defaultValue": "ServiceHealthActivityLogAlert"
    },
    "emailAddress": {
      "type": "string"
    }
  },
  "variables": {
    "alertScope": "[format('/subscriptions/{0}', subscription().subscriptionId)]"
  },
  "resources": [
    {
      "type": "microsoft.insights/actionGroups",
      "apiVersion": "2020-10-01",
      "name": "[parameters('actionGroups_name')]",
      "location": "Global",
      "properties": {
        "groupShortName": "[parameters('actionGroups_name')]",
        "enabled": true,
        "emailReceivers": [
          {
            "name": "[parameters('actionGroups_name')]",
            "emailAddress": "[parameters('emailAddress')]"
          }
        ],
        "smsReceivers": [],
        "webhookReceivers": []
      }
    },
    {
      "type": "microsoft.insights/activityLogAlerts",
      "apiVersion": "2017-04-01",
      "name": "[parameters('activityLogAlerts_name')]",
      "location": "Global",
      "properties": {
        "scopes": [
          "[variables('alertScope')]"
        ],
        "condition": {
          "allOf": [
            {
              "field": "category",
              "equals": "ServiceHealth"
            },
            {
              "field": "properties.incidentType",
              "equals": "Incident"
            },
			{                     
			   "field": "properties.impactedServices[*].ServiceName",                     
			   "containsAny": [
                  "SQL Database",
                  "SQL Managed Instance"    
               ]                 
			},
            {                     
				"field": "properties.impactedServices[*].ImpactedRegions[*].RegionName",
                "containsAny": [
                   "Australia Central"
                ]
            }
          ]
        },
        "actions": {
          "actionGroups": [
            {
              "actionGroupId": "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]",
              "webhookProperties": {}
            }
         ]
        },
        "enabled": true
      },
      "dependsOn": [
        "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]"
      ]
    }
  ]
}

Następne kroki