Share via


Exemplos de modelo do Gerenciador de Recursos para regras de alerta de integridade do serviço do Azure Monitor

Este artigo inclui exemplos de modelos do Gerenciador de Recursos do Azure para criar e configurar alertas de integridade de serviço no Azure Monitor.

Observação

Consulte Amostras do Azure Resource Manager do Azure Monitor para obter uma lista de amostras disponíveis e diretrizes sobre como implantá-las em sua assinatura do Azure.

Modelo para criar regras de alerta de integridade de serviço

O modelo a seguir cria uma regra de alerta de integridade do serviço que envia notificações de eventos de integridade do serviço para a assinatura de destino. Salve este modelo como CreateServiceHealthAlert.json e modifique-o conforme necessário.

Pontos a serem observados:

  1. Os 'escopos' de uma regra de alerta de integridade de serviço só podem conter uma única assinatura, que deve ser a mesma assinatura na qual a regra é criada. Não há suporte para várias assinaturas, um grupo de recursos ou outros tipos de escopo.
  2. Você pode criar regras de alerta de integridade do serviço somente no local "Global".
  3. O "properties.incidentType", "properties.impactedServices[]. ServiceName" e "properties.impactedServices[]. Regiões impactadas[*]. As cláusulas RegionName" dentro da condição de regra são opcionais. Você pode remover essas cláusulas para ser notificado sobre eventos enviados para todos os tipos de incidente, todos os serviços e/ou todas as regiões, respectivamente.
  4. Os nomes de serviço usados em "properties.impactedServices[*]. ServiceName" deve ser um nome de serviço válido do Azure. Uma lista de nomes válidos pode ser consultada no API de lista de metadados de integridade de Recursos
{
  "$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'))]"
      ]
    }
  ]
}

Próximas etapas