Inicio rápido: Creación de alertas de Estado del servicio en notificaciones de servicio mediante una plantilla de ARM

En este artículo se explica cómo configurar las alertas de Estado del servicio para las notificaciones de mantenimiento de un servicio mediante una plantilla de Resource Manager.

Una plantilla de Azure Resource Manager es un archivo de notación de objetos JavaScript (JSON) que define tanto la infraestructura como la configuración de un proyecto. La plantilla usa sintaxis declarativa. Se describe la implementación deseada sin escribir la secuencia de comandos de programación para crear la implementación.

Las notificaciones de mantenimiento del servicio se almacenan en el registro de actividad de Azure. Debido al volumen posiblemente grande de la información almacenada en el registro de actividad, hay una interfaz de usuario independiente que facilita la visualización y la configuración de alertas en las notificaciones de mantenimiento del servicio.

Puede recibir una alerta cuando Azure envía notificaciones de estado del servicio a la suscripción de Azure. Puede configurar la alerta en función de:

  • La clase de notificación de estado del servicio (problemas de servicio, mantenimiento planificado y avisos de estado).
  • La suscripción afectada.
  • Los servicios afectados.
  • Las regiones afectadas.

Nota:

Las notificaciones de estado del servicio no envían una alerta relativa a los eventos de estado de recursos.

También puede configurar a quién se debe enviar la alerta:

  • Seleccione un grupo de acciones existente.
  • Cree un nuevo grupo de acciones (que puede usarse para futuras alertas).

Para más información sobre los grupos de acciones, consulte Creación y administración de grupos de acciones.

Requisitos previos

Revisión de la plantilla

En el siguiente ejemplo se crea un grupo de acciones con un destino de correo electrónico y se habilitan todas las notificaciones de estado de servicio de la suscripción de destino. Guarde esta plantilla como CreateServiceHealthAlert.json.

{
  "$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": "2019-06-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"
            }
          ]
        },
        "actions": {
          "actionGroups": [
            {
              "actionGroupId": "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]",
              "webhookProperties": {}
            }
          ]
        },
        "enabled": true
      },
      "dependsOn": [
        "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]"
      ]
    }
  ]
}

La plantilla define dos recursos:

Implementación de la plantilla

Implemente la plantilla mediante cualquier método estándar de implementación de una plantilla de Resource Manager como en los ejemplos siguientes con la CLI y PowerShell. Reemplace los valores de ejemplo del grupo de recursos y dirección de correo electrónico por los valores adecuados para su entorno.

az login
az deployment group create --name CreateServiceHealthAlert --resource-group my-resource-group --template-file CreateServiceHealthAlert.json --parameters emailAddress='user@contoso.com'

Validación de la implementación

Para comprobar que se ha creado el área de trabajo, utilice uno de los comandos siguientes. Reemplace los valores de ejemplo del grupo de recursos por los valores que usó anteriormente.

az monitor activity-log alert show --resource-group my-resource-group --name ServiceHealthActivityLogAlert

Limpieza de recursos

Si planea seguir trabajando en otros inicios rápidos y tutoriales, considere la posibilidad de dejar estos recursos activos. Cuando ya no lo necesite, elimine el grupo de recursos; de este modo, se eliminarán también la regla de alertas y los recursos relacionados. Para eliminar el grupo de recursos mediante la CLI de Azure o Azure PowerShell

az group delete --name my-resource-group

Pasos siguientes