Поделиться через


Руководство по настройке уведомлений об аномалиях в Помощнике по метрикам

Внимание

Начиная с 20 сентября 2023 г. вы не сможете создавать новые ресурсы помощника по метрикам. Служба помощника по метрикам отменяется 1 октября 2026 года.

В этом руководстве описано следующее:

  • создание обработчика в Помощнике по метрикам;
  • отправка уведомлений с помощью Azure Logic Apps;
  • отправка уведомлений в Microsoft Teams;
  • отправка уведомлений через SMTP-сервер.

Необходимые компоненты

Создание ресурса Помощника по метрикам

Чтобы изучить возможности помощника по метрикам, может потребоваться создать ресурс помощника по метрикам в портал Azure для развертывания экземпляра помощника по метрикам.

создание обработчика в Помощнике по метрикам;

Обработчик в Помощнике по метрикам позволяет клиенту подписываться на аномалии метрик и отправлять уведомления через разные каналы. В Помощнике по метрикам поддерживается четыре типа обработчиков:

  • Обработчик сообщений электронной почты
  • Веб-перехватчик
  • обработчик Teams;
  • обработчик Azure DevOps.

Каждый тип обработчика соответствует определенному каналу, через который будет отправляться уведомление об аномалии.

Отправка уведомлений с помощью Azure Logic Apps, Teams и SMTP

Отправка уведомления по электронной почте с использованием Azure Logic Apps

Есть два распространенных способа отправки уведомлений по электронной почте, которые поддерживаются в Помощнике по метрикам. Один из них — отправка уведомлений по электронной почте через веб-перехватчики и Azure Logic Apps, а другой — отправка напрямую через собственный SMTP-сервер, который вам нужно настроить. В этом разделе основное внимание уделяется первому варианту, который проще реализовать клиентам без готового SMTP-сервера.

Шаг 1. Создание веб-перехватчика в помощнике по метрикам

Веб-перехватчик — это точка входа для всей информации, доступной в службе Помощника по метрикам. Он вызывает предоставляемый пользователем API при активации оповещения. Через веб-перехватчик можно отправлять все оповещения.

Выберите вкладку Обработчики в рабочей области Помощника по метрикам и нажмите кнопку Создать обработчик. Выберите тип обработчика Веб-перехватчик. Введите обязательные параметры и щелкните ОК. Подробные инструкции см. в разделе Создание веб-перехватчика.

Вам нужно заполнить еще один дополнительный параметр Конечная точка. Это можно сделать после выполнения шага 3 ниже.

Шаг 2. Создание ресурса приложения логики потребления

В портал Azure создайте ресурс приложения логики потребления с пустым рабочим процессом, следуя инструкциям в статье "Создание примера рабочего процесса приложения логики потребления". Когда откроется конструктор рабочих процессов, вернитесь к этому руководству.

Шаг 3. Добавление триггера при получении HTTP-запроса

  • Azure Logic Apps использует разные действия для активации определенных рабочих процессов. В этом случае используется триггер с именем "При получении HTTP-запроса".

  • В диалоговом окне При получении HTTP-запроса выберите Использовать пример полезной нагрузки, чтобы создать схему.

    Снимок экрана: диалоговое окно

    Скопируйте следующий пример кода JSON в текстовое поле и щелкните Готово.

    {
    "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"
     }
    
  • Выберите метод POST и щелкните Сохранить. Теперь вы увидите URL-адрес триггера HTTP-запроса. Щелкните значок копирования, чтобы скопировать значение, и вставьте его в поле Конечная точка на шаге 1.

    Снимок экрана: значок копирования URL-адреса триггера HTTP-запроса.

Шаг 4. Добавление следующего шага с помощью действия HTTP

Сигналы, отправляемые через веб-перехватчик, содержат только ограниченный набор сведений: timestamp, alertID, configurationID и т. п. Подробные сведения необходимо запрашивать через URL-адрес обратного вызова, указанный в сигнале. На этом шаге мы запросим подробные сведения об оповещении.

  • Выберите метод GET.

  • Выберите значение callBackURL в списке "Динамическое содержимое" в разделе URI.

  • Введите ключ Content-Type в области "Заголовки" и укажите значение application/json.

  • Введите ключ x-API-Key в области "Заголовки" и получите его значение, щелкнув вкладку Ключи API в рабочей области Помощника по метрикам. Так вы предоставите рабочему процессу достаточные разрешения для вызовов API.

    Снимок экрана: значение api-keys.

Шаг 5. Добавление следующего шага для анализа JSON

Чтобы упростить форматирование содержимого электронного письма, следует проанализировать ответ, полученный от API.

Примечание.

В этом руководстве приведен только краткий пример, а для получения полного формата сообщения электронной почты требуются дополнительные действия.

  • Выберите "Текст" в списке "Динамическое содержимое" в разделе "Содержимое".
  • Щелкните Использовать пример полезной нагрузки, чтобы создать схему. Скопируйте следующий пример кода JSON в текстовое поле и щелкните Готово.
{
    "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"
}

Шаг 6. Добавление следующего шага для создания HTML-таблицы

При вызове API был получен пакет данных, но не во всех сценариях эти данные требуются полностью. Выберите только те элементы, которые вам нужны и которые вы хотите включить в сообщение электронной почты с оповещением.

Ниже приведен пример таблицы HTML, в которой для сообщения с оповещением отбираются поля timestamp, metricGUID и dimension.

Снимок экрана: пример таблицы HTML.

Шаг 7. Добавление последнего шага для отправки сообщения электронной почты

Есть несколько способов отправки электронной почты, которые предоставляются как корпорацией Майкрософт, так и сторонними поставщиками. В зависимости от выбранного варианта клиенту может понадобиться создать клиент или учетную запись. Например, если в качестве сервера выбран Office 365 Outlook. Процесс входа будет дополнен созданием подключения и авторизацией. Будет установлено подключение к API для отправки оповещения через сервер электронной почты.

Укажите содержимое, которое вы хотите включить в поля "Текст" и "Тема" в этом сообщении электронной почты, и укажите адрес электронной почты в поле "Кому".

Снимок экрана: отправка сообщения электронной почты.

Следующие шаги

Перейдите к следующей статье, чтобы узнать, как создать запрос.