Uso de acciones de escalado automático para enviar notificaciones de alerta por correo electrónico y Webhook en Azure Monitor
En este artículo se muestra cómo configurar notificaciones para que pueda llamar a direcciones URL web específicas o enviar mensajes de correo electrónico en función de las acciones de escalabilidad automática de Azure.
webhooks
Los webhooks permiten enviar solicitudes HTTP a un punto de conexión de dirección URL específico (dirección URL de devolución de llamada) cuando se produce un determinado evento o desencadenante. Mediante webhooks, puede automatizar y simplificar los procesos habilitando el intercambio automático de información entre diferentes sistemas o aplicaciones. Use webhooks para desencadenar código personalizado, notificaciones u otras acciones que se ejecutarán cuando se produzca un evento de escalado automático.
Correo electrónico
Puede enviar un correo electrónico a cualquier dirección de correo electrónico válida cuando se produzca un evento de escalado automático.
Nota:
A partir del 3 de abril de 2024, no podrá agregar nuevos coadministradores para las notificaciones de escalado automático de Azure. Los administradores clásicos de Azure se retirarán el 31 de agosto de 2024 y no podrá enviar notificaciones de escalado automático de Azure mediante administradores y coadministradores después del 31 de agosto de 2024. Para obtener más información, consulte Prepararse la retirada de los coadministradores
Configuración de notificaciones
Use las plantillas de Azure Portal, CLI, PowerShell o Resource Manager para configurar las notificaciones.
Configurar las notificaciones mediante Azure Portal.
Seleccione la pestaña Notificar en la página de configuración de escalabilidad automática para configurar las notificaciones.
Escriba una lista de direcciones de correo electrónico a las que enviar notificaciones.
Escriba un URI de webhook para enviar una notificación a un servicio web. También puede agregar encabezados personalizados a la solicitud de webhook. Por ejemplo, puede agregar un token de autenticación en el encabezado, los parámetros de consulta o agregar un encabezado personalizado para identificar el origen de la solicitud.
Autenticación en Webhook
El webhook puede autenticarse automáticamente mediante un token, donde el URI del webhook se guarda con un identificador de token como un parámetro de consulta. Por ejemplo, https://mysamplealert/webcallback?tokenid=123-abc456-7890&myparameter2=value123
.
Esquema de carga de Webhook de notificación de escalado automático
Cuando se genera la notificación de escalado automático, los metadatos siguientes se incluyen en la carga de Webhook:
{
"version": "1.0",
"status": "Activated",
"operation": "Scale Out",
"context": {
"timestamp": "2023-06-22T07:01:47.8926726Z",
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/microsoft.insights/autoscalesettings/AutoscaleSettings-002",
"name": "AutoscaleSettings-002",
"details": "Autoscale successfully started scale operation for resource 'ScaleableAppServicePlan' from capacity '1' to capacity '2'",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"resourceGroupName": "rg-001",
"resourceName": "ScaleableAppServicePlan",
"resourceType": "microsoft.web/serverfarms",
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.Web/serverfarms/ScaleableAppServicePlan",
"portalLink": "https://portal.azure.com/#resource/subscriptions/ffffffff-eeee-dddd-cccc-bbbbbbbbbbb0/resourceGroups/rg-001/providers/Microsoft.Web/serverfarms/ScaleableAppServicePlan",
"resourceRegion": "West Central US",
"oldCapacity": "1",
"newCapacity": "2"
},
"properties": {
"key1": "value1",
"key2": "value2"
}
}
Campo | Mandatory | Descripción |
---|---|---|
status | Sí | Estado que indica que se ha generado una acción de escalabilidad automática. |
operation | Sí | Para aumentar las instancias es "Escalabilidad horizontal" y para reducirlas es "Reducción horizontal". |
context | Sí | Contexto de la acción de escalabilidad automática. |
timestamp | Sí | Marca de tiempo de cuando se desencadenó la acción de escalabilidad automática. |
id | Sí | Identificador de Resource Manager de la configuración de escalabilidad automática. |
name | Sí | Nombre de la configuración de escalabilidad automática. |
detalles | Sí | Explicación de la acción que realizó el servicio de escalabilidad automática y el cambio en el recuento de instancias. |
subscriptionId | Sí | Identificador de suscripción del recurso de destino que se va a escalar. |
resourceGroupName | Sí | Nombre del grupo de recursos del recurso de destino que se va a escalar. |
resourceName | Sí | Nombre del recurso de destino que se va a escalar. |
resourceType | Sí | Tres valores admitidos: "microsoft.classiccompute/domainnames/slots/roles" - Roles de Azure Cloud Services, "microsoft.compute/virtualmachinescalesets" - Azure Virtual Machine Scale Sets y "Microsoft.Web/serverfarms" - Característica Web App de Azure Monitor. |
resourceId | Sí | Identificador de Resource Manager del recurso de destino que se va a escalar. |
portalLink | Sí | Vínculo de Azure Portal a la página de resumen del recurso de destino. |
oldCapacity | Sí | Recuento de instancias (antiguo) actual cuando la escalabilidad automática realizó una acción de escalado. |
newCapacity | Sí | Nuevo recuento de instancias al que la escalabilidad automática escaló el recurso. |
properties | No | Opcional. Conjunto de pares <Clave, Valor> (por ejemplo, Diccionario <Cadena, Cadena>). El campo de propiedades es opcional. En una interfaz de usuario personalizada o un flujo de trabajo basado en una aplicación lógica, puede especificar claves y valores que se pueden pasar utilizando la carga. Una forma alternativa de pasar propiedades personalizadas de vuelta a la llamada de webhook saliente es usar el propio URI de webhook (como parámetros de consulta). |