Создание или изменение правила генерации оповещений поиска по журналам
В этой статье показано, как создать новое правило генерации оповещений поиска по журналам или изменить существующее правило генерации оповещений поиска журналов в Azure Monitor. Дополнительные сведения о оповещениях см. в обзоре оповещений.
Правила генерации оповещений объединяют ресурсы для отслеживания, данные мониторинга из ресурса и условия, которые требуется активировать оповещение. Затем можно определить группы действий и правила обработки оповещений, чтобы определить, что происходит при активации оповещения.
Оповещения, активированные этими правилами генерации оповещений, содержат полезные данные, использующие общую схему оповещений.
Необходимые компоненты
Чтобы создать или изменить правило генерации оповещений, необходимо иметь следующие разрешения:
- Разрешение на чтение в целевом ресурсе правила генерации оповещений.
- Разрешение на запись в группе ресурсов, в которой создается правило генерации оповещений. Если правило генерации оповещений создается на портале Azure, то по умолчанию правило генерации оповещений создается в той же группе ресурсов, в которой находится целевой ресурс.
- Разрешение на чтение для любой группы действий, связанной с правилом генерации оповещений (если применимо).
Доступ к мастеру правил генерации оповещений в портал Azure
Существует несколько способов создания или изменения правила генерации оповещений.
Создание или изменение правила генерации оповещений на домашней странице портала
- На портале Azure выберите Монитор.
- На левой панели выберите "Оповещения".
- Выберите и создайте >правило генерации оповещений.
Создание или изменение правила генерации оповещений из определенного ресурса
- В портал Azure перейдите к ресурсу.
- На левой панели выберите "Оповещения".
- Выберите и создайте >правило генерации оповещений.
- Область правила генерации оповещений задана для выбранного ресурса. Продолжайте задавать условия для правила генерации оповещений.
Изменение существующего правила генерации оповещений
В портал Azure на домашней странице или из определенного ресурса выберите "Оповещения" на левой панели.
Щелкните Правила генерации оповещений.
Выберите правило генерации оповещений, которое нужно изменить, и нажмите кнопку "Изменить".
Выберите любую вкладку для правила генерации оповещений, чтобы изменить параметры.
Настройка области правила генерации оповещений
На панели "Выбор ресурса" задайте область для правила генерации оповещений. Вы можете фильтровать по подписке, типу ресурса или расположению ресурсов.
Выберите Применить.
Настройка условий правила генерации оповещений
На вкладке "Условие" при выборе поля "Имя сигнала" выберите "Пользовательский поиск по журналам". Или выберите "Просмотреть все сигналы ", если вы хотите выбрать другой сигнал для условия.
(Необязательно) Если вы выбрали "Просмотреть все сигналы" на предыдущем шаге, используйте область "Выбор сигнала" для поиска имени сигнала или фильтрации списка сигналов. Фильтровать по:
- Тип сигнала: выбор поиска по журналам.
- Источник сигнала: служба, которая отправляет сигналы пользовательского поиска по журналам и журналам (сохраненным запросом). Выберите имя сигнала и нажмите кнопку "Применить".
На панели журналов напишите запрос, возвращающий события журнала, для которых требуется создать оповещение. Чтобы использовать один из стандартных запросов правила генерации оповещений, разверните область схемы и фильтра рядом с областью журналов . Затем выберите вкладку "Запросы " и выберите один из запросов.
Помните об этих ограничениях для запросов правил генерации оповещений поиска журналов:
- Запросы правил генерации оповещений поиска журналов не поддерживают
bag_unpack()
pivot()
иnarrow()
. - Запросы правил генерации оповещений поиска журнала поддерживают только запросы ago() с литералами интервала времени.
AggregatedValue
— зарезервированное слово. Его нельзя использовать в запросе в правилах генерации оповещений поиска по журналам.- Объединенный размер всех данных в свойствах правил генерации оповещений поиска журнала не может превышать 64 КБ.
- При определении пользовательских функций в запросе KQL для оповещений поиска журналов важно быть осторожным с кодом функции, который включает относительные предложения времени (например, now()). Пользовательские функции с относительными предложениями времени, которые не определены в запросе KQL поиска по журналам, могут привести к несоответствиям в результатах запроса, что может повлиять на точность и надежность оценки оповещений. Следовательно:
- Чтобы обеспечить точное и своевременное оповещение, всегда определять относительные предложения времени непосредственно в запросе KQL для поиска по журналам.
- Если в функции требуются диапазоны времени, они должны передаваться в качестве параметров и использоваться в функции.
- Запросы правил генерации оповещений поиска журналов не поддерживают
(Необязательно) Если вы запрашиваете кластер Azure Data Explorer или Azure Resource Graph, рабочая область Log Analytics не может автоматически идентифицировать столбец с меткой времени события. Мы рекомендуем добавить фильтр диапазона времени в запрос. Например:
adx('https://help.kusto.windows.net/Samples').table | where MyTS >= ago(5m) and MyTS <= now()
arg("").Resources | where type =~ 'Microsoft.Compute/virtualMachines' | project _ResourceId=tolower(id), tags
Примеры запросов оповещений поиска по журналам доступны для Azure Data Explorer и Resource Graph.
Межслужбовые запросы не поддерживаются в облаках государственных организаций. Дополнительные сведения об ограничениях см. в разделе об ограничениях запросов между службами и объединение таблиц Azure Resource Graph с рабочей областью Log Analytics.
Нажмите Запуск, чтобы выполнить запрос.
В разделе Предварительный просмотр отображаются результаты запроса. После завершения редактирования запроса нажмите кнопку "Продолжить редактирование оповещений".
Откроется вкладка "Условие" и заполняется запросом журнала. По умолчанию правило подсчитывает количество результатов за последние пять минут. Если система обнаруживает сводные результаты запроса, то правило автоматически обновляется на основе полученной информации.
В разделе Измерение выберите значения для этих полей:
Поле Description Измерение Оповещения поиска по журналам могут измерять два способа, которые можно использовать для различных сценариев мониторинга:
Строки таблицы: можно использовать количество возвращаемых строк для работы с такими событиями, как журналы событий Windows, исключения системного журнала и приложения.
Вычисление числового столбца: вы можете использовать вычисления на основе любого числового столбца для включения любого количества ресурсов. Примером является процент ЦП.Тип агрегирования Вычисление, выполняемое для нескольких записей, чтобы объединить их с одним числовым значением с помощью детализации агрегирования. Примеры: Total, Average, Minimum и Maximum. Степень детализации агрегирования Интервал агрегирования нескольких записей в одно числовое значение. (Необязательно) В разделе "Разделение по измерениям" можно использовать измерения для предоставления контекста для триггерного оповещения.
Измерения — это столбцы из результатов запроса, содержащих дополнительные данные. Когда вы используете измерения, правило генерации оповещений группирует результаты запроса по значениям измерений и оценивает результаты каждой группы отдельно. Если условие выполнено, правило создает оповещение для этой группы. Полезная нагрузка оповещения включает в себя комбинацию, которая активировала оповещение.
Можно применить до шести измерений для каждого правила генерации оповещений. Измерения могут быть только строковыми или числовыми столбцами. Если вы хотите использовать столбец, который не является числом или строковым типом в качестве измерения, необходимо преобразовать его в строку или числовое значение в запросе. Если выбрать несколько значений измерения, каждый временный ряд, полученный из комбинации, будет активировать собственное оповещение и его понадобится оплачивать отдельно.
Например:
- Измерения можно использовать для мониторинга использования ЦП на нескольких экземплярах, на которые выполняется веб-сайт или приложение. Каждый экземпляр отслеживается по отдельности, и уведомления отправляются для каждого экземпляра, где использование ЦП превышает настроенное значение.
- Вы можете решить, не разделять по измерениям, если требуется условие, примененное к нескольким ресурсам в области. Например, вы не будете использовать измерения, если вы хотите запустить оповещение, если по крайней мере пять компьютеров в области группы ресурсов имеют использование ЦП выше настроенного значения.
Как правило, если область правила генерации оповещений является рабочей областью, оповещения запускаются в рабочей области. Если требуется отдельное оповещение для каждого затронутого ресурса Azure, можно:
Используйте столбец идентификатора ресурса Azure Resource Manager в качестве измерения. При использовании этого параметра оповещение запускается в рабочей области с столбцом идентификатора ресурса Azure в качестве измерения.
Укажите оповещение в качестве измерения в свойстве идентификатора ресурса Azure. Этот параметр делает ресурс, который ваш запрос возвращает целевой объект оповещения. Затем оповещения запускаются на ресурсе, возвращаемом запросом, например виртуальной машине или учетной записи хранения, в отличие от рабочей области.
При использовании этого параметра, если рабочая область получает данные из ресурсов в нескольких подписках, оповещения можно активировать на ресурсах из подписки, отличной от подписки правила генерации оповещений.
Выберите значения для следующих полей:
Поле Description Имя измерения Измерениями могут быть числовые или строковые столбцы. Измерения позволяют отслеживать определенные временные ряды и предоставляют контекст для активированного оповещения. Оператор Оператор, используемый для имени измерения и значения. Значения измерения Значения измерений основаны на данных за последние 48 часов. Выберите Добавить пользовательское значение, чтобы добавить пользовательские значения измерений. Включение всех будущих значений Выберите это поле, чтобы включить любые будущие значения, добавленные в выбранное измерение. В разделе Логика оповещений выберите значения для этих полей:
Поле Description Оператор Результаты запроса преобразуются в число. В этом поле выберите оператор, используемый для сравнения числа с пороговым значением. Пороговое значение Числовое значение, задаваемое как пороговое. Частота оценки Как часто выполняется запрос. Его можно задать в любом месте от одной минуты до одного дня (24 часа). Примечание.
Частота не является определенным временем, когда оповещение выполняется каждый день. Как часто выполняется правило генерации оповещений.
Существуют некоторые ограничения на использование правила генерации оповещений в одну минуту. Если вы установили частоту правила генерации оповещений в одну минуту, выполняется внутренняя манипуляция для оптимизации запроса. Эта манипуляция может привести к сбою запроса, если он содержит неподдерживаемые операции. Наиболее распространенные причины, по которым запрос не поддерживается:
- Запрос содержит
search
операцию ,union
илиtake
(ограничение). - Запрос содержит функцию
ingestion_time()
. - Запрос использует
adx
шаблон. - Запрос вызывает функцию, которая вызывает другие таблицы.
Примеры запросов оповещений поиска по журналам доступны для Azure Data Explorer и Resource Graph.
- Запрос содержит
(Необязательно) В разделе "Дополнительные параметры " можно указать количество сбоев и период оценки оповещений, необходимый для активации оповещения. Например, если задать степень детализации агрегирования в 5 минут, можно указать, что вы хотите активировать оповещение только в том случае, если три сбоя (15 минут) произошли за последний час. Бизнес-политика приложения определяет этот параметр.
Выберите значения для этих полей в разделе Число нарушений, по достижении которого активируется оповещение:
Поле Description Количество нарушений Число нарушений, по достижении которого активируется оповещение. Период оценки Период времени, в течение которого происходит определенное число нарушений. Переопределение диапазона времени запроса Если вы хотите, чтобы период оценки оповещений отличается от диапазона времени запроса, введите здесь диапазон времени.
Максимальное значение для диапазона времени оповещения — 2 дня. Даже если запрос содержитago
команду с диапазоном времени, превышающим два дня, применяется двухдневный максимальный диапазон времени. Например, даже если текст запроса содержитсяago(7d)
, запрос сканирует только до двух дней данных. Если для запроса требуется больше данных, чем для оценки оповещения, вы можете изменить временной диапазон вручную. Если запрос содержитago
команду, он автоматически изменяется на два дня (48 часов).Примечание.
Если вы или ваш администратор назначили политика Azure Log Search Alerts в рабочих областях Log Analytics должны использовать ключи, управляемые клиентом, необходимо выбрать " Проверить связанное хранилище рабочей области". Если это не так, создание правила завершится ошибкой, так как оно не будет соответствовать требованиям политики.
На диаграмме предварительного просмотра отображаются результаты оценки запросов с течением времени. Вы можете изменить период диаграммы или выбрать различные временные ряды, которые были вызваны уникальным разделением оповещений по измерениям.
Нажмите кнопку Готово. После настройки условий правила генерации оповещений можно настроить сведения о правиле генерации оповещений для завершения создания оповещения или при необходимости добавить действия и теги в правило генерации оповещений.
Настройка действий правила генерации оповещений
На вкладке "Действия" можно при необходимости выбрать или создать группы действий для правила генерации оповещений.
Настройка сведений о правиле генерации оповещени
На вкладке "Сведения" в разделе "Сведения о проекте" выберите значения подписки и группы ресурсов.
Сведения о правиле генерации оповещений:
Выберите значение серьезности.
Введите значения для имени правила генерации оповещений и описания правила генерации оповещений.
Примечание.
Правило, использующее удостоверение, не может иметь точку с запятой (;) символ в значении имени правила генерации оповещений.
Выберите значение региона.
В разделе "Удостоверение" выберите удостоверение, которое правило генерации оповещений поиска журнала использует для проверки подлинности при отправке запроса журнала.
При выборе удостоверения следует учитывать следующие моменты:
- Управляемое удостоверение требуется, если вы отправляете запрос в Azure Data Explorer или Resource Graph.
- Используйте управляемое удостоверение, если вы хотите иметь возможность просматривать или изменять разрешения, связанные с правилом генерации оповещений.
- Если вы не используете управляемое удостоверение, разрешения правила генерации оповещений основаны на разрешениях последнего пользователя на изменение правила в момент последнего изменения правила.
- Используйте управляемое удостоверение, чтобы избежать ситуации, когда правило не работает должным образом, так как пользователь, который последний раз редактировал правило, не имеет разрешений для всех ресурсов, добавленных в область правила.
Удостоверение, связанное с правилом, должно иметь следующие роли:
- Если запрос обращается к рабочей области Log Analytics, удостоверение должно быть назначено роль читателя для всех рабочих областей, к которым обращается запрос. Если вы создаете оповещения поиска по журналам с учетом ресурсов, правило генерации оповещений может получить доступ к нескольким рабочим областям, а удостоверение должно иметь роль читателя для всех них.
- Если вы запрашиваете кластер Azure Data Explorer или Resource Graph, необходимо добавить роль чтения для всех источников данных, к которым обращается запрос. Например, если запрос ориентирован на ресурсы, он нуждается в роли читателя в этом ресурсе.
- Если запрос обращается к удаленному кластеру Azure Data Explorer, необходимо назначить удостоверение:
- Роль читателя для всех источников данных, к которым обращается запрос. Например, если запрос вызывает удаленный кластер Azure Data Explorer с помощью
adx()
функции, он должен иметь роль читателя в этом кластере Azure Data Explorer. - Роль средства просмотра баз данных для всех баз данных, к которым обращается запрос.
- Роль читателя для всех источников данных, к которым обращается запрос. Например, если запрос вызывает удаленный кластер Azure Data Explorer с помощью
Подробные сведения об управляемых удостоверениях см. в разделе "Управляемые удостоверения" для ресурсов Azure.
Выберите один из следующих параметров для удостоверения, которое использует правило генерации оповещений:
Параметр удостоверений Description Не допускается Разрешения правила генерации оповещений основаны на разрешениях последнего пользователя, изменившего правило, в то время, когда правило было изменено. Включение управляемого удостоверения, назначаемого системой Azure создает новое выделенное удостоверение для этого правила генерации оповещений. Это удостоверение не имеет разрешений и автоматически удаляется при удалении правила. После создания правила необходимо назначить этому удостоверению разрешения для доступа к необходимой рабочей области и источникам данных для запроса. Дополнительные сведения о назначении разрешений см. в статье "Назначение ролей Azure" с помощью портал Azure. Правила генерации оповещений поиска журналов, использующие связанное хранилище, не поддерживаются. Включение управляемого удостоверения, назначаемого пользователем Перед созданием правила генерации оповещений создайте удостоверение и назначите ему соответствующие разрешения для запроса журнала. Это обычное удостоверение Azure. Одно удостоверение можно использовать в нескольких правилах генерации оповещений. Удостоверение не удаляется при удалении правила. При выборе этого типа удостоверения откроется панель, чтобы выбрать связанное удостоверение для правила. (Необязательно) В разделе "Дополнительные параметры " можно задать несколько параметров:
Поле Description Включение при создании Выберите этот параметр, чтобы начать работу правила генерации оповещений сразу после завершения его создания. Автоматическое разрешение оповещений Выберите этот параметр, чтобы сделать оповещение состоянием. Если оповещение находится в состоянии, оповещение разрешается, если условие больше не выполняется для определенного диапазона времени. Диапазон времени может быть разным в зависимости от частоты оповещения:
1 минута — условие оповещения не выполняется в течение 10 минут.
От 5 до 15 минут: условие генерации оповещений не выполняется в течение трех периодов частоты.
От 15 минут до 11 часов: условие генерации оповещений не выполняется в течение двух периодов частоты.
От 11 до 12 часов — условие оповещения не выполняется в течение одного периода частоты.
Обратите внимание, что оповещения поиска по журналам с отслеживанием состояния имеют эти ограничения.Отключение действий Выберите этот параметр, чтобы задать период времени ожидания, прежде чем будут активированы действия оповещений. В появившемся поле "Отключить отключение" выберите время ожидания после запуска оповещения перед активацией действий. Проверка связанного хранилища рабочей области Выберите этот параметр, если настроено связанное хранилище рабочей области для оповещений. Если связанное хранилище не настроено, правило не создается. -
(Необязательно) В разделе "Пользовательские свойства ", если это правило генерации оповещений содержит группы действий, можно добавить собственные свойства для включения в полезные данные уведомления об оповещении. Эти свойства можно использовать в действиях, вызываемых группой действий, таких как веб-перехватчик, функция Azure или действие приложения логики.
Пользовательские свойства указываются в виде пар "ключ-значение" с помощью статического текста, динамического значения, извлеченного из полезных данных оповещения, или сочетания обоих.
Формат извлечения динамического значения из полезных данных генерации оповещений:
${<path to schema field>}
Например:${data.essentials.monitorCondition}
.Используйте формат общей схемы генерации оповещений, чтобы указать поле в полезных данных, независимо от того, будут ли группы действий, настроенные для правила генерации оповещений, использовать общую схему.
Примечание.
- Пользовательские свойства добавляются в полезные данные оповещения, но они не отображаются в шаблоне электронной почты или в сведениях об оповещении в портал Azure.
В следующих примерах используются значения в настраиваемых свойствах для использования данных из полезных данных, использующих общую схему оповещений.
В этом примере создается тег дополнительных сведений с данными о времени начала окна и времени окончания окна:
- Имя:
Additional Details
- Значение:
Evaluation windowStartTime: ${data.alertContext.condition.windowStartTime}. windowEndTime: ${data.alertContext.condition.windowEndTime}
- Результат:
AdditionalDetails:Evaluation windowStartTime: 2023-04-04T14:39:24.492Z. windowEndTime: 2023-04-04T14:44:24.492Z
В этом примере добавляются данные, касающиеся причины разрешения или запуска оповещения:
- Имя:
Alert ${data.essentials.monitorCondition} reason
- Значение:
${data.alertContext.condition.allOf[0].metricName} ${data.alertContext.condition.allOf[0].operator} ${data.alertContext.condition.allOf[0].threshold} ${data.essentials.monitorCondition}. The value is ${data.alertContext.condition.allOf[0].metricValue}
- Возможные результаты:
Alert Resolved reason: Percentage CPU GreaterThan5 Resolved. The value is 3.585
Alert Fired reason": "Percentage CPU GreaterThan5 Fired. The value is 10.585
Настройка тегов правил генерации оповещений
На вкладке "Теги" можно при необходимости задать все необходимые теги в ресурсе правила генерации оповещений.
Проверка и создание правила генерации оповещений
На вкладке "Просмотр и создание " проверяется правило. Если возникла проблема, вернитесь и исправьте ее.
Если проверка пройдена и вы проверили параметры, выберите Создать.