Создание оповещения о метриках с динамическими порогами
Динамические пороговые значения применяют расширенное машинное обучение и используют набор алгоритмов и методов для:
- Узнайте об истории поведения метрик.
- Анализ метрик с течением времени и определение шаблонов, таких как почасовые, ежедневные или еженедельные шаблоны.
- Распознать аномалии, указывающие на возможные проблемы со службой.
- Вычислите наиболее подходящие пороговые значения для метрик.
При использовании динамических пороговых значений вам не нужно знать правильное пороговое значение для каждой метрики. Динамические пороговые значения вычисляют наиболее подходящие пороговые значения.
Рекомендуется настроить правила генерации оповещений с динамическими порогами для этих метрик:
- Процент ЦП виртуальной машины
- Время выполнения HTTP-запроса Application Insights
Динамические пороги помогут вам делать следующее:
- Создавать масштабируемые оповещения для сотен серий метрик с одним правилом генерации оповещений. Если у вас меньше правил генерации оповещений, вы тратите меньше времени на создание и управление ими. Масштабируемые оповещения особенно полезны для нескольких измерений или для нескольких ресурсов, таких как все ресурсы в подписке.
- Создавайте правила без необходимости знать, какое пороговое значение необходимо настроить.
- Настройте оповещения метрик с помощью высокоуровневых концепций, не нуждаясь в обширных знаниях о области метрик.
- Предотвращение шумных (низких точности) или пороговых значений (низкой точности), которые не имеют ожидаемого шаблона.
Вы можете использовать динамические пороговые значения для:
- Большинство платформ Azure Monitor и пользовательские метрики.
- Общие метрики приложений и инфраструктуры.
- Шумные метрики, такие как ЦП компьютера или память.
- Метрики с низким распределением, такие как доступность и частота ошибок.
Динамические пороговые значения можно настроить с помощью:
- Портал Azure.
- Полностью автоматизированный API Azure Resource Manager.
- Шаблоны оповещений метрик.
Вычисление пороговых значений оповещений и предварительная версия
При создании правила генерации оповещений динамические пороговые значения используют 10 дней исторических данных для вычисления почасовых или ежедневных сезонных шаблонов. Диаграмма, которая отображается в предварительном просмотре оповещений, отражает эти данные.
Динамические пороговые значения постоянно используют все доступные исторические данные для изучения, и они делают корректировки более точными. Через три недели динамические пороговые значения имеют достаточно данных для определения еженедельных шаблонов, и модель корректируется, чтобы включить еженедельную сезонность.
Система автоматически распознает длительные сбои и устраняет их из алгоритма обучения порогового значения. Если есть длительный сбой, динамические пороговые значения понимают данные. Они обнаруживают системные проблемы с тем же уровнем конфиденциальности, что и до сбоя.
Рекомендации по использованию динамических пороговых значений
- Чтобы обеспечить точное вычисление пороговых значений, правила генерации оповещений, использующие динамические пороговые значения, не активируют оповещение перед сбором трех дней и по крайней мере 30 выборок данных метрик. Новые ресурсы или ресурсы, которые отсутствуют данные метрик, не активируют оповещение до тех пор, пока не будет доступно достаточно данных.
- Динамические пороговые значения требуют по крайней мере три недели исторических данных для обнаружения еженедельной сезонности. Некоторые подробные шаблоны, такие как двунаправленные или полунедельные шаблоны, могут быть не обнаружены.
- Если поведение метрики изменилось недавно, изменения не сразу отражаются в верхних и нижних границах динамического порога. Эти границы рассчитываются на основе данных метрик за последние 10 дней. При просмотре границ динамического порога для определенной метрики просмотрите тенденцию метрик на прошлой неделе и не только в последние часы или дни.
- Динамические пороговые значения хорошо подходит для обнаружения значительных отклонений, а не для медленно развивающихся проблем. Медленные изменения поведения, вероятно, не будут активировать оповещение.
Известные проблемы с динамической чувствительностью порогового значения
Если правило генерации оповещений, использующее динамические пороги, слишком шумно или вызывает слишком много, может потребоваться уменьшить ее чувствительность. Используйте один из следующих методов.
- Пороговая чувствительность: задайте чувствительность к низкому , чтобы быть более терпимыми к отклонениям.
- Количество нарушений (в разделе "Дополнительные параметры"). Настройте правило генерации оповещений, чтобы активировать только в течение определенного периода времени несколько отклонений. Это сделает правило менее подверженным воздействию временных отклонений.
Возможно, вы обнаружите, что правило генерации оповещений, использующее динамические пороги, не срабатывает или не учитывается достаточно, даже если он настроен с высокой конфиденциальностью. Этот сценарий может произойти, когда распределение метрик является очень нерегулярным. Рассмотрим одно из следующих решений:
- Перейдите к мониторингу дополнительной метрики, подходящей для вашего сценария (если применимо). Например, проверьте наличие изменений в частоте успешных выполнений, а не частоте сбоев.
- Попробуйте выбрать другое значение параметра Степень детализации сбора данных (период).
- Проверьте, произошло ли резкое изменение в поведении метрик за последние 10 дней, например сбой. Внезапное изменение может повлиять на верхние и нижние пороговые значения, вычисляемые для метрики, и расширить их. Подождите несколько дней, пока сбой больше не будет включен в вычисление порогового значения. Вы также можете изменить правило генерации оповещений, чтобы использовать данные "Игнорировать" перед параметром "Дополнительные параметры".
- Если данные имеют еженедельную сезонность, но недостаточно журнала доступны для метрики, вычисляемые пороговые значения могут привести к широкому верхнему и нижнему границам. Например, при вычислении рабочие дни и выходные дни могут обрабатываться одинаково, что приводит к расширению границ, которые не всегда соответствуют данным. Эта проблема должна решиться после того, как будет собран достаточный журнал метрик. Затем обнаруживается правильная сезонность и вычисляемые пороговые значения обновляются соответствующим образом.
Если значение метрики отображает большие колебания, динамические пороговые значения могут создать широкую модель вокруг значений метрик, что может привести к снижению или более высокой границе, чем ожидалось. Этот сценарий может произойти, когда:
- установлен низкий уровень чувствительности;
- метрика демонстрирует неравномерное поведение с высокой дисперсией, то есть в данных есть пики или провалы.
Попробуйте сделать модель менее чувствительной, выбрав более высокую чувствительность или выбрав большее значение периода Lookback. Кроме того, можно использовать данные "Игнорировать", прежде чем исключить последние нарушения из исторических данных, используемых для сборки модели.
Настройка динамических пороговых значений
Чтобы настроить динамические пороговые значения, выполните процедуру создания правила генерации оповещений. Используйте эти параметры на вкладке "Условие ".
- Для параметра "Пороговое значение" выберите Dynamic.
- Для типа агрегирования рекомендуется не выбрать максимальное значение.
- Для оператора выберите "Больше", чем если поведение не представляет использование приложения.
- Для конфиденциальности пороговых значений выберите средний или низкий , чтобы уменьшить шум оповещений.
- Для проверки каждого выберите частоту проверки правила генерации оповещений, если условие выполнено. Чтобы свести к минимуму влияние оповещения на бизнес, рекомендуется использовать более низкую частоту. Убедитесь, что это значение меньше или равно значению периода Lookback.
- Для периода Lookback задайте период времени для просмотра при каждом проверке данных. Убедитесь, что это значение больше или равно проверке каждого значения.
- Для дополнительных параметров выберите, сколько нарушений активирует оповещение в течение определенного периода времени. При необходимости задайте дату, с которой нужно начать обучение исторических данных метрик и вычислить динамические пороговые значения.
Примечание.
Правила генерации оповещений метрик, созданные на портале, создаются в той же группе ресурсов, что и целевой ресурс.
Диаграмма для динамических пороговых значений
На следующей диаграмме показана метрика, ее динамические пороговые ограничения и некоторые оповещения, которые запускались при превышении допустимых пороговых значений.
Используйте следующие сведения для интерпретации диаграммы:
- Синяя линия: метрика, измеряемая с течением времени.
- Синяя затеняемая область: допустимый диапазон для метрики. Если значения метрик остаются в пределах этого диапазона, оповещение не активируется.
- Синие точки: агрегированные значения метрик. Если выбрать часть диаграммы, а затем навести указатель мыши на синюю линию, под курсором появится синяя точка, чтобы указать отдельное агрегированное значение метрики.
- Всплывающее поле с синей точкой: измеренное значение метрики (синяя точка) и верхние и нижние значения допустимого диапазона.
- Красная точка с черным кругом: первое значение метрик за пределами допустимого диапазона. Это значение запускает оповещение о метрике и переводит ее в активное состояние.
- Красные точки: другие измеряемые значения за пределами допустимого диапазона. Они не активируют больше оповещений метрик, но оповещение остается в активном состоянии.
- Красная область: время, когда значение метрики находилось за пределами допустимого диапазона. Оповещение остается в активном состоянии до тех пор, пока последующие измеренные значения находятся вне допустимого диапазона, но новые оповещения не запускаются.
- Конец красной области: возврат допустимых значений. Когда синяя линия возвращается внутри допустимых значений, красная область останавливается, а измеренная строка значения становится синей. Состояние оповещения метрик, запущенного во время красной точки с черным кругом, устанавливается для разрешения.
Метрики, не поддерживаемые динамическими порогами
Динамические пороговые значения поддерживают большинство метрик, но следующие метрики не могут использовать динамические пороговые значения:
Тип ресурса | Имя метрики |
---|---|
Microsoft.ClassicStorage/storageAccounts | UsedCapacity |
Microsoft.ClassicStorage/storageAccounts/blobServices | BlobCapacity |
Microsoft.ClassicStorage/storageAccounts/blobServices | BlobCount |
Microsoft.ClassicStorage/storageAccounts/blobServices | IndexCapacity |
Microsoft.ClassicStorage/storageAccounts/fileServices | FileCapacity |
Microsoft.ClassicStorage/storageAccounts/fileServices | FileCount |
Microsoft.ClassicStorage/storageAccounts/fileServices | 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.ContainerService/managedClusters | NodesCount |
Microsoft.ContainerService/managedClusters | PodCount |
Microsoft.ContainerService/managedClusters | CompletedJobsCount |
Microsoft.ContainerService/managedClusters | RestartingContainerCount |
Microsoft.ContainerService/managedClusters | OomKilledContainerCount |
Microsoft.Devices/IotHubs | TotalDeviceCount |
Microsoft.Devices/IotHubs | ConnectedDeviceCount |
Microsoft.Devices/IotHubs | TotalDeviceCount |
Microsoft.Devices/IotHubs | ConnectedDeviceCount |
Microsoft.DocumentDB/databaseAccounts | CassandraConnectionClosures |
Microsoft.EventHub/clusters | Размер |
Microsoft.EventHub/namespaces | Размер |
Microsoft.IoTCentral/IoTApps | connectedDeviceCount |
Microsoft.IoTCentral/IoTApps | provisionedDeviceCount |
Microsoft.Kubernetes/connectedClusters | NodesCount |
Microsoft.Kubernetes/connectedClusters | PodCount |
Microsoft.Kubernetes/connectedClusters | CompletedJobsCount |
Microsoft.Kubernetes/connectedClusters | RestartingContainerCount |
Microsoft.Kubernetes/connectedClusters | OomKilledContainerCount |
Microsoft.MachineLearningServices/workspaces/onlineEndpoints | RequestsPerMinute |
Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments | DeploymentCapacity |
Microsoft.Maps/accounts | CreatorUsage |
Microsoft.Media/mediaservices/streamingEndpoints | EgressBandwidth |
Microsoft.Network/applicationGateways | Пропускная способность |
Microsoft.Network/azureFirewalls | Пропускная способность |
Microsoft.Network/expressRouteGateways | ExpressRouteGatewayPacketsPerSecond |
Microsoft.Network/expressRouteGateways | ExpressRouteGatewayNumberOfVmInVnet |
Microsoft.Network/expressRouteGateways | ExpressRouteGatewayFrequencyOfRoutesChanged |
Microsoft.Network/virtualNetworkGateways | ExpressRouteGatewayBitsPerSecond |
Microsoft.Network/virtualNetworkGateways | ExpressRouteGatewayPacketsPerSecond |
Microsoft.Network/virtualNetworkGateways | ExpressRouteGatewayNumberOfVmInVnet |
Microsoft.Network/virtualNetworkGateways | ExpressRouteGatewayFrequencyOfRoutesChanged |
Microsoft.ServiceBus/namespaces | Размер |
Microsoft.ServiceBus/namespaces | Сообщения |
Microsoft.ServiceBus/namespaces | ActiveMessages |
Microsoft.ServiceBus/namespaces | DeadletteredMessages |
Microsoft.ServiceBus/namespaces | ScheduledMessages |
Microsoft.ServiceFabricMesh/applications | AllocatedCpu |
Microsoft.ServiceFabricMesh/applications | AllocatedMemory |
Microsoft.ServiceFabricMesh/applications | ActualCpu |
Microsoft.ServiceFabricMesh/applications | ActualMemory |
Microsoft.ServiceFabricMesh/applications | ApplicationStatus |
Microsoft.ServiceFabricMesh/applications | ServiceStatus |
Microsoft.ServiceFabricMesh/applications | ServiceReplicaStatus |
Microsoft.ServiceFabricMesh/applications | ContainerStatus |
Microsoft.ServiceFabricMesh/applications | RestartCount |
Microsoft.Storage/storageAccounts | UsedCapacity |
Microsoft.Storage/storageAccounts/blobServices | BlobCapacity |
Microsoft.Storage/storageAccounts/blobServices | BlobCount |
Microsoft.Storage/storageAccounts/blobServices | BlobProvisionedSize |
Microsoft.Storage/storageAccounts/blobServices | IndexCapacity |
Microsoft.Storage/storageAccounts/fileServices | FileCapacity |
Microsoft.Storage/storageAccounts/fileServices | FileCount |
Microsoft.Storage/storageAccounts/fileServices | FileShareCount |
Microsoft.Storage/storageAccounts/fileServices | FileShareSnapshotCount |
Microsoft.Storage/storageAccounts/fileServices | FileShareSnapshotSize |
Microsoft.Storage/storageAccounts/fileServices | FileShareCapacityQuota |
Microsoft.Storage/storageAccounts/fileServices | FileShareProvisionedIOPS |
Связанный контент
Если у вас есть отзывы о динамических пороговых значениях, отправьте нам сообщение электронной почты.