Share via


Tutorial: Habilitación de la notificación de anomalías en Metrics Advisor

Importante

A partir del 20 de septiembre de 2023, no podrá crear nuevos recursos de Metrics Advisor. El servicio Metrics Advisor se va a retirar el 1 de octubre de 2026.

En este tutorial, aprenderá a:

  • Crear un enlace en Metrics Advisor
  • Enviar notificaciones con Azure Logic Apps
  • Enviar notificaciones a Microsoft Teams
  • Enviar notificaciones mediante el servidor SMTP

Requisitos previos

Creación de un recurso de Metrics Advisor

Para explorar las funcionalidades de Metrics Advisor, es posible que tenga que crear un recurso de Metrics Advisor en Azure Portal para implementar la instancia de Metrics Advisor.

Creación de un enlace en Metrics Advisor

Un enlace de Metrics Advisor es un puente que permite al cliente suscribirse a anomalías de métricas y enviar notificaciones por medio de diferentes canales. En Metrics Advisor hay cuatro tipos de enlaces:

  • Enlace de correo electrónico
  • webhook
  • Enlace de Teams
  • Enlace de Azure DevOps

Cada tipo de enlace se corresponde a un canal específico por el que se notificará la anomalía.

Envío de notificaciones con Azure Logic Apps, Teams y SMTP

Envío de notificaciones mediante Azure Logic Apps

En Metrics Advisor se admiten dos opciones comunes para enviar notificaciones por correo electrónico. Una consiste en usar webhooks y Azure Logic Apps para enviar alertas por correo electrónico; la otra consiste en configurar un servidor SMTP y usarlo para enviar directamente las alertas por correo electrónico. Esta sección se centrará en la primera opción, que es más fácil para los clientes que no tienen un servidor SMTP disponible.

Paso 1: Crear un webhook en Metrics Advisor

Un webhook es el punto de entrada de toda la información disponible en el servicio Metrics Advisor y llama a una API proporcionada por el usuario cuando se desencadena una alerta. Todas las alertas se pueden enviar por medio de un webhook.

Seleccione la pestaña Enlaces en el área de trabajo de Metrics Advisor y después el botón Create hook (Crear enlace). Elija un tipo de enlace web. Rellene los parámetros obligatorios y seleccione Aceptar. Para ver los pasos detallados, consulte Creación de un webhook.

Hay un parámetro adicional de Punto de conexión que debe rellenar y podría hacerlo después de completar el paso 3 siguiente.

Paso 2: Crear un recurso de aplicación lógica de consumo

En Azure Portal, cree un recurso de aplicación lógica del plan Consumo con un flujo de trabajo en blanco siguiendo las instrucciones de Creación de un ejemplo de flujo de trabajo de aplicación lógica del plan Consumo. Cuando vea que se abre el diseñador de flujo de trabajo, vuelva a este tutorial.

Paso 3: Añadir un trigger de Cuando se recibe una petición HTTP

  • En Azure Logic Apps se usan varias acciones para desencadenar flujos de trabajo definidos. En este caso de uso, se usa el desencadenador denominado Cuando se recibe una solicitud HTTP.

  • En el cuadro de diálogo Cuando se recibe una solicitud HTTP, seleccione Usar una carga de ejemplo para generar el esquema.

    Screenshot that shows the When an HTTP request dialog box and the Use sample payload to generate schema option selected.

    Copie el siguiente código JSON de ejemplo en el cuadro de texto y seleccione Listo.

    {
    "properties": {
        "value": {
            "items": {
                "properties": {
                    "alertInfo": {
                        "properties": {
                            "alertId": {
                                "type": "string"
                            },
                            "anomalyAlertingConfigurationId": {
                                "type": "string"
                            },
                            "createdTime": {
                                "type": "string"
                            },
                            "modifiedTime": {
                                "type": "string"
                            },
                            "timestamp": {
                                "type": "string"
                            }
                        },
                        "type": "object"
                    },
                    "alertType": {
                        "type": "string"
                    },
                    "callBackUrl": {
                        "type": "string"
                    },
                    "hookId": {
                        "type": "string"
                    }
                },
                "required": [
                    "hookId",
                    "alertType",
                    "alertInfo",
                    "callBackUrl"
                ],
                "type": "object"
            },
            "type": "array"
        }
    },
    "type": "object"
     }
    
  • Elija el método como "POST" y seleccione Guardar. Aparecerá la dirección URL del desencadenador de solicitudes HTTP. Seleccione el icono de copia para copiarla y rellénela en el Punto de conexión del paso 1.

    Screenshot that highlights the copy icon to copy the URL of your HTTP request trigger.

Paso 4: Añadir un paso siguiente mediante la acción "HTTP

Las señales que se insertan por medio del webhook solo contienen información limitada, como la marca de tiempo, alertID, configurationID, etc. Es necesario consultar información detallada mediante la dirección URL de devolución de llamada proporcionada en la señal. Este paso consiste en consultar información detallada de las alertas.

  • Elección de un método "GET"

  • Seleccione "callBackURL" en la lista "Contenido dinámico" de "URI".

  • Escriba una clave "Content-Type" en "Headers" (Encabezados) y escriba un valor de "application/json".

  • Escriba una clave "x-api-key" en "Headers" (Encabezados) y haga clic en la pestaña "Claves de API" del área de trabajo de Metrics Advisor. Este paso es para asegurarse de que el flujo de trabajo tiene permisos suficientes para las llamadas API.

    Screenshot that highlights the api-keys

Paso 5: Añadir un paso siguiente a 'parse JSON'.

Tendrá que analizar la respuesta de la API para facilitar el formato del contenido del correo electrónico.

Nota

En este tutorial solo se comparte un ejemplo rápido; el formato del correo electrónico final se debe diseñar todavía más.

  • Seleccione "Cuerpo" en la lista "Contenido dinámico" en "Contenido".
  • Seleccione Usar una carga de ejemplo para generar el esquema. Copie el siguiente código JSON de ejemplo en el cuadro de texto y seleccione Listo.
{
    "properties": {
        "@@nextLink": {},
        "value": {
            "items": {
                "properties": {
                    "properties": {
                        "properties": {
                            "IncidentSeverity": {
                                "type": "string"
                            },
                            "IncidentStatus": {
                                "type": "string"
                            }
                        },
                        "type": "object"
                    },
                    "rootNode": {
                        "properties": {
                            "createdTime": {
                                "type": "string"
                            },
                            "detectConfigGuid": {
                                "type": "string"
                            },
                            "dimensions": {
                                "properties": {
                                },
                                "type": "object"
                            },
                            "metricGuid": {
                                "type": "string"
                            },
                            "modifiedTime": {
                                "type": "string"
                            },
                            "properties": {
                                "properties": {
                                    "AnomalySeverity": {
                                        "type": "string"
                                    },
                                    "ExpectedValue": {}
                                },
                                "type": "object"
                            },
                            "seriesId": {
                                "type": "string"
                            },
                            "timestamp": {
                                "type": "string"
                            },
                            "value": {
                                "type": "number"
                            }
                        },
                        "type": "object"
                    }
                },
                "required": [
                    "rootNode",
                    "properties"
                ],
                "type": "object"
            },
            "type": "array"
        }
    },
    "type": "object"
}

Paso 6: Añadir un paso siguiente a "crear tabla HTML

Se ha devuelto una gran cantidad de información de la llamada API, pero, en función de los escenarios, es posible que no toda la información sea útil. Elija los elementos que le interesan y que le gustaría incluir en el correo electrónico de alerta.

A continuación se muestra un ejemplo de una tabla HTML en el que se eligen "timestamp", "metricGUID" y "dimension" para incluirlos en el correo electrónico de alerta.

Screenshot of html table example

Paso 7: Añade el último paso para "enviar un correo electrónico".

Hay varias opciones para enviar correo electrónico, tanto hospedadas por Microsoft como ofertas de terceros. Es posible que el cliente deba tener un inquilino o una cuenta para la opción elegida. Por ejemplo, al elegir "Office 365 Outlook" como servidor. El proceso de inicio de sesión se realizará para crear la conexión y la autorización. Se establecerá una conexión de API para usar el servidor de correo electrónico para enviar las alertas.

Rellene el contenido que quiera incluir en "Cuerpo", asigne un "Asunto" al correo electrónico y rellene una dirección de correo electrónico en "Para".

Screenshot of send an email

Pasos siguientes

Pase al siguiente artículo, donde aprenderá a