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


Создание оповещения о метриках с динамическими порогами

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

  • Узнайте об истории поведения метрик.
  • Анализ метрик с течением времени и определение шаблонов, таких как почасовые, ежедневные или еженедельные шаблоны.
  • Распознать аномалии, указывающие на возможные проблемы со службой.
  • Вычислите наиболее подходящие пороговые значения для метрик.

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

Рекомендуется настроить правила генерации оповещений с динамическими порогами для этих метрик:

  • Процент ЦП виртуальной машины
  • Время выполнения HTTP-запроса Application Insights

Динамические пороги помогут вам делать следующее:

  • Создавать масштабируемые оповещения для сотен серий метрик с одним правилом генерации оповещений. Если у вас меньше правил генерации оповещений, вы тратите меньше времени на создание и управление ими. Масштабируемые оповещения особенно полезны для нескольких измерений или для нескольких ресурсов, таких как все ресурсы в подписке.
  • Создавайте правила без необходимости знать, какое пороговое значение необходимо настроить.
  • Настройте оповещения метрик с помощью высокоуровневых концепций, не нуждаясь в обширных знаниях о области метрик.
  • Предотвращение шумных (низких точности) или пороговых значений (низкой точности), которые не имеют ожидаемого шаблона.

Вы можете использовать динамические пороговые значения для:

  • Большинство платформ Azure Monitor и пользовательские метрики.
  • Общие метрики приложений и инфраструктуры.
  • Шумные метрики, такие как ЦП компьютера или память.
  • Метрики с низким распределением, такие как доступность и частота ошибок.

Динамические пороговые значения можно настроить с помощью:

Вычисление пороговых значений оповещений и предварительная версия

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

Динамические пороговые значения постоянно используют все доступные исторические данные для изучения, и они делают корректировки более точными. Через три недели динамические пороговые значения имеют достаточно данных для определения еженедельных шаблонов, и модель корректируется, чтобы включить еженедельную сезонность.

Система автоматически распознает длительные сбои и устраняет их из алгоритма обучения порогового значения. Если есть длительный сбой, динамические пороговые значения понимают данные. Они обнаруживают системные проблемы с тем же уровнем конфиденциальности, что и до сбоя.

Рекомендации по использованию динамических пороговых значений

  • Чтобы обеспечить точное вычисление пороговых значений, правила генерации оповещений, использующие динамические пороговые значения, не активируют оповещение перед сбором трех дней и по крайней мере 30 выборок данных метрик. Новые ресурсы или ресурсы, которые отсутствуют данные метрик, не активируют оповещение до тех пор, пока не будет доступно достаточно данных.
  • Динамические пороговые значения требуют по крайней мере три недели исторических данных для обнаружения еженедельной сезонности. Некоторые подробные шаблоны, такие как двунаправленные или полунедельные шаблоны, могут быть не обнаружены.
  • Если поведение метрики изменилось недавно, изменения не сразу отражаются в верхних и нижних границах динамического порога. Эти границы рассчитываются на основе данных метрик за последние 10 дней. При просмотре границ динамического порога для определенной метрики просмотрите тенденцию метрик на прошлой неделе и не только в последние часы или дни.
  • Динамические пороговые значения хорошо подходит для обнаружения значительных отклонений, а не для медленно развивающихся проблем. Медленные изменения поведения, вероятно, не будут активировать оповещение.
  • Динамические пороговые значения нельзя использовать в правилах генерации оповещений, отслеживающих несколько условий.

Настройка динамических пороговых значений

Чтобы настроить динамические пороговые значения, выполните процедуру создания правила генерации оповещений. Используйте эти параметры на вкладке "Условие ".

  • Для параметра "Пороговое значение" выберите Dynamic.
  • Для типа агрегирования рекомендуется не выбрать максимальное значение.
  • Для оператор выберите больше, если поведение не представляет собой использование приложения.
  • Для чувствительности порога выберите Средний или Низкий, чтобы уменьшить шум оповещений.
  • Для проверки каждого выберите частоту проверки правила генерации оповещений, если условие выполнено. Чтобы свести к минимуму влияние оповещения на бизнес, рекомендуется использовать более низкую частоту. Убедитесь, что это значение меньше или равно значению периода ретроспективы.
  • Для периода ретроспективы задайте период времени, рассматриваемый при каждой проверке данных. Убедитесь, что это значение больше или равно проверке каждого значения.
  • Для дополнительных параметров выберите, сколько нарушений активирует оповещение в течение определенного периода времени. При необходимости задайте дату, с которой нужно начать обучение исторических данных метрик и вычислить динамические пороговые значения.

Примечание.

Правила генерации оповещений метрик, созданные на портале, создаются в той же группе ресурсов, что и целевой ресурс.

Динамическая пороговая диаграмма

На следующей диаграмме показана метрика, ее динамические пороговые ограничения и некоторые оповещения, которые запускались при превышении допустимых пороговых значений.

Снимок экрана диаграммы, показывающей метрику, динамические пороговые ограничения и некоторые сработавшие оповещения.

Используйте следующие сведения для интерпретации диаграммы:

  • Синяя линия: метрика, измеряемая с течением времени.
  • Синяя затеняемая область: допустимый диапазон для метрики. Если значения метрик остаются в пределах этого диапазона, оповещение не активируется.
  • Синие точки: агрегированные значения метрик. Если выбрать часть диаграммы, а затем навести указатель мыши на синюю линию, под курсором появится синяя точка, чтобы указать отдельное агрегированное значение метрики.
  • Всплывающее поле с синей точкой: измеренное значение метрики (синяя точка) и верхние и нижние значения допустимого диапазона.
  • Красная точка с черным кругом: первое значение метрик за пределами допустимого диапазона. Это значение запускает оповещение о метрике и переводит ее в активное состояние.
  • Красные точки: другие измеряемые значения за пределами допустимого диапазона. Они не активируют больше оповещений метрик, но оповещение остается в активном состоянии.
  • Красная область: время, когда значение метрики находилось за пределами допустимого диапазона. Оповещение остается в активном состоянии до тех пор, пока последующие измеренные значения находятся вне допустимого диапазона, но новые оповещения не запускаются.
  • Конец красной области: возврат допустимых значений. Когда синяя линия возвращается внутри допустимых значений, красная область останавливается, а измеренная строка значения становится синей. Состояние оповещения метрик, запущенного во время красной точки с черным кругом, устанавливается для разрешения.

Известные проблемы с динамической чувствительностью порогового значения

  • Если правило генерации оповещений, использующее динамические пороги, слишком шумно или вызывает слишком много, может потребоваться уменьшить ее чувствительность. Используйте один из следующих методов.

    • Пороговая чувствительность: задайте чувствительность на низкий уровень, чтобы увеличить терпимость к отклонениям.
    • Количество нарушений (в разделе "Дополнительные параметры"): Настройте правило оповещения так, чтобы оно срабатывало только в случае, если в течение определенного периода времени происходит несколько отклонений. Это сделает правило менее подверженным воздействию временных отклонений.
  • Возможно, вы обнаружите, что правило генерации оповещений, использующее динамические пороги, не срабатывает или не учитывается достаточно, даже если он настроен с высокой конфиденциальностью. Этот сценарий может произойти, когда распределение метрик является очень нерегулярным. Рассмотрим одно из следующих решений:

    • Перейдите к мониторингу дополнительной метрики, подходящей для вашего сценария (если применимо). Например, проверьте наличие изменений в частоте успешных выполнений, а не частоте сбоев.
    • Попробуйте выбрать другое значение для детализации агрегирования (период).
    • Проверьте, произошло ли резкое изменение в поведении метрик за последние 10 дней, например сбой. Внезапное изменение может повлиять на верхние и нижние пороговые значения, вычисляемые для метрики, и расширить их. Подождите несколько дней, пока сбой больше не будет включен в вычисление порогового значения. Вы также можете изменить правило оповещения, чтобы использовать опцию Игнорировать данные перед в Дополнительных параметрах.
    • Если данные имеют еженедельную сезонность, но недостаточно журнала доступны для метрики, вычисляемые пороговые значения могут привести к широкому верхнему и нижнему границам. Например, при вычислении рабочие дни и выходные дни могут обрабатываться одинаково, что приводит к расширению границ, которые не всегда соответствуют данным. Эта проблема должна решиться после того, как будет собран достаточный журнал метрик. Затем обнаруживается правильная сезонность и вычисляемые пороговые значения обновляются соответствующим образом.
  • Если значение метрики отображает большие колебания, динамические пороговые значения могут создать широкую модель вокруг значений метрик, что может привести к снижению или более высокой границе, чем ожидалось. Этот сценарий может произойти, когда:

    • установлен низкий уровень чувствительности;
    • метрика демонстрирует неравномерное поведение с высокой дисперсией, то есть в данных есть пики или провалы.

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

Метрики, не поддерживаемые динамическими порогами

Динамические пороговые значения поддерживают большинство метрик, но следующие метрики не могут использовать динамические пороговые значения:

Тип ресурса Имя метрики
Microsoft.ClassicStorage/storageAccounts Использованная ёмкость
Microsoft.ClassicStorage/storageAccounts/blobServices Вместимость BLOB
Microsoft.ClassicStorage/учетные записи хранения/службы объектов BlobCount
Microsoft.ClassicStorage/storageAccounts/blobServices Ёмкость индекса
Microsoft.ClassicStorage/storageAccounts/fileServices Ёмкость файла
Microsoft.ClassicStorage/storageAccounts/fileServices КоличествоФайлов
Microsoft.ClassicStorage/учетные записи хранилища/файловые сервисы FileShareCount
Microsoft.ClassicStorage/storageAccounts/fileServices FileShareSnapshotCount
Microsoft.ClassicStorage/storageAccounts/fileServices FileShareSnapshotSize
Microsoft.ClassicStorage/storageAccounts/fileServices FileShareQuota
Microsoft.Compute/disks Общая скорость чтения с диска (байт/с)
Microsoft.Compute/disks Всего операций чтения с диска/с
Microsoft.Compute/disks Общая скорость записи на диск (байт/с)
Microsoft.Compute/disks Всего операций записи на диск/с
Служба контейнеров Microsoft/управляемые кластеры NodesCount
Служба контейнеров Microsoft/управляемые кластеры PodCount
Служба контейнеров Microsoft/управляемые кластеры КоличествоВыполненныхЗадач
Служба контейнеров Microsoft/управляемые кластеры КоличествоПерезапускаКонтейнеров
Служба контейнеров Microsoft/управляемые кластеры Количество контейнеров, завершенных из-за нехватки памяти
Microsoft.Devices/IotHubs ОбщееКоличествоУстройств
Microsoft.Devices/IotHubs ЧислоПодключённыхУстройств
Microsoft.Devices/IotHubs ОбщееКоличествоУстройств
Microsoft.Devices/IotHubs Количество подключенных устройств
Microsoft.DocumentDB/databaseAccounts CassandraConnectionClosures
Microsoft.EventHub/clusters Размер
Microsoft.EventHub/namespaces Размер
Microsoft.IoTCentral/IoTApps количествоПодключенныхУстройств
Microsoft.IoTCentral/IoTApps количество настроенных устройств
Microsoft.Kubernetes/connectedClusters Количество узлов
Microsoft.Kubernetes/connectedClusters PodCount
Microsoft.Kubernetes/connectedClusters КоличествоЗавершённыхЗадач
Microsoft.Kubernetes/connectedClusters КоличествоПерезапусковКонтейнера
Microsoft.Kubernetes/connectedClusters Количество контейнеров, завершённых из-за OOM (Out Of Memory)
Microsoft.MachineLearningServices/workspaces/onlineEndpoints Запросы в минуту
Microsoft.УслугиМашинногоОбучения/рабочиепространства/онлайнКонечныеТочки/развертывания Вместимость развертывания
Microsoft.Maps/учетные записи CreatorUsage
Microsoft.Media/mediaservices/streamingEndpoints Исходящая пропускная способность
Microsoft.Network/applicationGateways Пропускная способность
Microsoft.Network/azureFirewalls Пропускная способность
Microsoft.Network/expressRouteGateways ExpressRouteGatewayPacketsPerSecond (пакеты в секунду шлюза ExpressRoute)
Microsoft.Network/expressRouteGateways ExpressRouteGatewayNumberOfVmInVnet
Microsoft.Network/expressRouteGateways ЧастотаМаршрутовИзмененаШлюзомExpressRoute
Microsoft.Network/виртуальные сетевые шлюзы ExpressRouteGatewayBitsPerSecond
Microsoft.Network/виртуальные сетевые шлюзы Пакеты в секунду для шлюза ExpressRoute
Microsoft.Network/виртуальные сетевые шлюзы ШлюзExpressRouteКоличествоВмВVnet
Microsoft.Network/виртуальные сетевые шлюзы Частота изменения маршрутов ExpressRoute Gateway
Microsoft.ServiceBus/namespaces Размер
Microsoft.ServiceBus/namespaces Сообщения
Microsoft.ServiceBus/namespaces ActiveMessages
Microsoft.ServiceBus/namespaces Сообщения в папке недоставленных писем
Microsoft.ServiceBus/namespaces Запланированные сообщения
Microsoft.ServiceFabricMesh/applications Выделенный процессор
Microsoft.ServiceFabricMesh/applications ВыделеннаяПамять
Microsoft.ServiceFabricMesh/applications ActualCpu
Microsoft.ServiceFabricMesh/applications ActualMemory
Microsoft.ServiceFabricMesh/applications Статус заявки
Microsoft.ServiceFabricMesh/applications ServiceStatus
Microsoft.ServiceFabricMesh/applications ServiceReplicaStatus
Microsoft.ServiceFabricMesh/applications ContainerStatus
Microsoft.ServiceFabricMesh/applications КоличествоПерезапусков
Microsoft.Storage/storageAccounts Использованная ёмкость
Microsoft.Storage/storageAccounts/blobServices BlobCapacity
Microsoft.Storage/storageAccounts/blobServices BlobCount
Microsoft.Storage/storageAccounts/blobServices Предоставленный размер Blob
Microsoft.Storage/storageAccounts/blobServices ИндекснаяВместимость
Microsoft.Storage/storageAccounts/файловыеСервисы Объём файла
Microsoft.Storage/storageAccounts/fileServices Количество файлов
Microsoft.Storage/storageAccounts/fileServices FileShareCount
Microsoft.Storage/storageAccounts/fileServices FileShareSnapshotCount
Microsoft.Storage/storageAccounts/fileServices FileShareSnapshotSize
Microsoft.Storage/учетныеЗаписи/службыФайлов FileShareCapacityQuota
Microsoft.Storage/storageAccounts/fileServices FileShareProvisionedIOPS

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