Compartilhar via


Exemplos de modelo do Resource Manager para regras de alerta de integridade do serviço do Azure Monitor

Este artigo inclui exemplos de modelos do Azure Resource Manager para criar e configurar alertas de integridade do 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 do 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 esse modelo como CreateServiceHealthAlert.json e modifique-o conforme necessário.

Pontos a serem observados:

  1. Os "escopos" de uma regra de alerta de integridade do 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 de serviço apenas no local "Global".
  3. As cláusulas "properties.incidentType", "properties.impactedServices[].ServiceName" e "properties.impactedServices[].ImpactedRegions[*].RegionName" dentro da condição da regra são opcionais. Você pode remover essas cláusulas para ser notificado em eventos enviados para todos os tipos de incidentes, todos os serviços e/ou todas as regiões, respectivamente.
  4. Os nomes de serviço usados em "properties.impactedServices[*].ServiceName" devem 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