Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Общая схема оповещений упорядочивает управление уведомлениями Azure Monitor. Исторически журнал активности, метрики и оповещения поиска по журналам имели собственные шаблоны электронной почты и схемы веб-перехватчика. Общая схема оповещений предоставляет стандартизованную схему для всех оповещений.
Использование стандартизированной схемы помогает свести к минимуму количество интеграции, что упрощает процесс управления и поддержания интеграции. Общая схема обеспечивает более полноценное использование оповещений как на портале Azure, так и в мобильном приложении Azure.
Общая схема генерации оповещений обеспечивает согласованную структуру:
- Шаблоны электронной почты: используйте подробный шаблон электронной почты для диагностики проблем. Внедренные ссылки на экземпляр оповещения на портале и затронутый ресурс позволяют быстро перейти к процессу устранения.
-
Структура JSON: используйте согласованную структуру JSON для создания интеграции для всех типов оповещений с помощью:
- Приложения логики Azure
- Функции Azure
- Runbook службы автоматизации Azure
Примечание.
- Оповещения, генерируемые с помощью VM insights, не поддерживают общую схему.
- Оповещения интеллектуального обнаружения используют общую схему по умолчанию. Вам не нужно включить общую схему для оповещений интеллектуального обнаружения.
Структура общей схемы
Общая схема содержит сведения о затронутом ресурсе и причине оповещения в следующих разделах:
Основные сведения. Стандартные поля, используемые всеми типами оповещений, описывающими ресурс, затронутый оповещением и общими метаданными оповещения, например серьезностью или описанием.
Если вы хотите перенаправить экземпляры оповещений в определенные команды на основе таких критериев, как группа ресурсов, можно использовать поля в разделе Essentials , чтобы обеспечить логику маршрутизации для всех типов оповещений. Затем команды, получающие уведомление об оповещении, могут использовать поля контекста для их исследования.
Контекст оповещения: поля, которые зависят от типа оповещения. Поля контекста оповещений описывают причину оповещения. Например, в контексте оповещения могли бы быть поля для имени и значения метрики. Оповещение из журнала активности предоставляет информацию о событии, которое сгенерировало предупреждение.
Пользовательские свойства: дополнительные сведения, не включенные в полезные данные оповещения по умолчанию, можно включить в полезные данные оповещения с помощью настраиваемых свойств. Пользовательские свойства — это пара Ключ:Значение, которая может включать любые сведения, настроенные в правиле оповещения.
Пример полезной нагрузки оповещения
{
"schemaId": "azureMonitorCommonAlertSchema",
"data": {
"essentials": {
"alertId": "/subscriptions/<subscription ID>/providers/Microsoft.AlertsManagement/alerts/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"alertRule": "WCUS-R2-Gen2",
"severity": "Sev3",
"signalType": "Metric",
"monitorCondition": "Resolved",
"monitoringService": "Platform",
"alertTargetIDs": [
"/subscriptions/<subscription ID>/resourcegroups/pipelinealertrg/providers/microsoft.compute/virtualmachines/wcus-r2-gen2"
],
"configurationItems": [
"wcus-r2-gen2"
],
"originAlertId": "3f2d4487-b0fc-4125-8bd5-7ad17384221e_PipeLineAlertRG_microsoft.insights_metricAlerts_WCUS-R2-Gen2_-117781227",
"firedDateTime": "2019-03-22T13:58:24.3713213Z",
"resolvedDateTime": "2019-03-22T14:03:16.2246313Z",
"description": "",
"essentialsVersion": "1.0",
"alertContextVersion": "1.0"
},
"alertContext": {
"properties": null,
"conditionType": "SingleResourceMultipleMetricCriteria",
"condition": {
"windowSize": "PT5M",
"allOf": [
{
"metricName": "Percentage CPU",
"metricNamespace": "Microsoft.Compute/virtualMachines",
"operator": "GreaterThan",
"threshold": "25",
"timeAggregation": "Average",
"dimensions": [
{
"name": "ResourceId",
"value": "3efad9dc-3d50-4eac-9c87-8b3fd6f97e4e"
}
],
"metricValue": 7.727
}
]
}
},
"customProperties": {
"Key1": "Value1",
"Key2": "Value2"
}
}
}
Для примеров оповещений, использующих общую схему, см. Образцы загрузок оповещений.
Основные поля
Поле | Описание |
---|---|
alertId | Уникальный идентификатор ресурса, который идентифицирует экземпляр оповещения. |
правило оповещения | Имя правила генерации оповещений, которое создало этот экземпляр оповещения. |
Серьезность | Уровень серьезности оповещения. Возможные значения: Sev0, Sev1, Sev2, Sev3 или Sev4. |
тип сигнала | Определяет сигнал, для которого было определено это правило генерации оповещений. Возможные значения: метрика, журнал или журнал действий. |
мониторить состояние | Когда срабатывает оповещение, для монитора оповещения устанавливается состояние Активировано. Когда устранено исходное состояние, вызвавшее оповещение, для монитора устанавливается состояние Устранено. |
сервис мониторинга | Служба или решение мониторинга, создавшее это оповещение. Служба мониторинга определяет, какие поля находятся в контексте оповещения. |
ID целей оповещения | Список идентификаторов Azure Resource Manager, которые представляют затронутые оповещением объекты. Для оповещения, связанного с поиском по журналам в рабочей области Log Analytics или экземпляре Application Insights, речь идет о соответствующей рабочей области или приложении. |
элементы конфигурации | Список ресурсов, затронутых оповещением. В некоторых случаях элементы конфигурации могут отличаться от целевых объектов оповещений. Например, в оповещениях поиска по метрикам или журналам, определенных в рабочей области Log Analytics, элементы конфигурации являются фактическими ресурсами, которые отправляют данные, а не рабочая область.
configurationItems используется для сопоставления оповещений с ресурсами в базе данных управления конфигурацией. |
originAlertId | Идентификатор экземпляра оповещения, сгенерированный службой мониторинга. |
firedDateTime | Дата и время создания экземпляра оповещения в формате UTC. |
resolvedDateTime | Дата и время, когда состояние монитора для экземпляра оповещения устанавливается в Устранено, по времени UTC. В настоящее время это применимо только к метрическим оповещениям. |
описание | Описание, как определено в правиле оповещения. |
alertRuleID | Идентификатор правила генерации оповещений, создающего экземпляр оповещения. |
Тип ресурса | Тип ресурса, затронутый оповещением. |
ИмяГруппыРесурсов | Имя группы ресурсов для затронутого ресурса. |
версия Essentials | Номер версии для раздела основных сведений. |
alertContextVersion | Номер версии для раздела alertContext . |
investigationLink | Ссылка на исследование оповещения в Azure Monitor. В настоящее время требуется регистрация для ограниченного предварительного просмотра. |
Поля контекста для метрических оповещений
Поле | Описание |
---|---|
свойства | (Необязательно.) Коллекция определяемых клиентом свойств. |
тип состояния | Тип условия, выбранного для правила генерации оповещений: - статическое пороговое значение — динамическое пороговое значение - вебтест |
условие | |
размер окна | Период времени, анализируемый правилом генерации оповещений. |
allOf | Указывает, что для активации оповещения необходимо выполнить все условия, определенные в правиле генерации оповещений. |
чувствительность оповещений | В правиле оповещения с динамическим порогом указывается, насколько чувствительно оно, или насколько значение может отклоняться от верхнего или нижнего порога. |
сбои в периодах | В правиле оповещения с динамическим порогом, количество периодов оценки, не соответствующих порогу, которые активируют оповещение. Например, можно указать, что оповещение активируется, если 3 из последних пяти периодов оценки не являются пороговым значением оповещения. |
Количество периодов оценки | Общее количество оценок. |
минимальные периоды отказов для оповещения | Минимальное количество оценок, которые не удовлетворяют условиям правила оповещения. |
игнорироватьДанныеДо | (Необязательно.) В правиле оповещения с динамическим порогом дата, с которой начинается расчет порогового значения. Используйте это значение, чтобы указать, что правило не должно вычислять динамическое пороговое значение с использованием данных до указанной даты. |
название метрики | Имя метрики, отслеживаемой правилом генерации оповещений. |
Пространство метрик | Пространство имен метрик, контролируемых правилом оповещения. |
оператор | Логический оператор правила генерации оповещений. |
порог | Пороговое значение, определенное в правиле генерации оповещений. Для правила оповещения с динамическим порогом это значение является вычисленным пороговым значением. |
агрегация времени | Тип агрегирования правила оповещений. |
размеры | Метрика, вызвавшая оповещение. |
имя | Имя измерения. |
значение | Значение измерения. |
metricValue | Значение метрики в то время, когда оно нарушило пороговое значение. |
webTestName | Если тип условия имеет значение webtest , имя веб-теста. |
windowStartTime | Время начала окна оценки, в котором сработало оповещение. |
windowEndTime | Время окончания периода оценки, в котором сработало оповещение. |
Пример оповещений метрик со статическим пороговым значением, когда служба мониторинга = Platform
{
"alertContext": {
"properties": null,
"conditionType": "SingleResourceMultipleMetricCriteria",
"condition": {
"windowSize": "PT5M",
"allOf": [
{
"metricName": "Percentage CPU",
"metricNamespace": "Microsoft.Compute/virtualMachines",
"operator": "GreaterThan",
"threshold": "25",
"timeAggregation": "Average",
"dimensions": [
{
"name": "ResourceId",
"value": "3efad9dc-3d50-4eac-9c87-8b3fd6f97e4e"
}
],
"metricValue": 31.1105
}
],
"windowStartTime": "2019-03-22T13:40:03.064Z",
"windowEndTime": "2019-03-22T13:45:03.064Z"
}
}
}
Пример оповещения о метрике с динамическим пороговым значением, когда служба мониторинга = Platform
{
"alertContext": {
"properties": null,
"conditionType": "DynamicThresholdCriteria",
"condition": {
"windowSize": "PT5M",
"allOf": [
{
"alertSensitivity": "High",
"failingPeriods": {
"numberOfEvaluationPeriods": 1,
"minFailingPeriodsToAlert": 1
},
"ignoreDataBefore": null,
"metricName": "Egress",
"metricNamespace": "microsoft.storage/storageaccounts",
"operator": "GreaterThan",
"threshold": "47658",
"timeAggregation": "Total",
"dimensions": [],
"metricValue": 50101
}
],
"windowStartTime": "2021-07-20T05:07:26.363Z",
"windowEndTime": "2021-07-20T05:12:26.363Z"
}
}
}
Пример метрики оповещения в тестах доступности, когда служба мониторинга = Platform
{
"alertContext": {
"properties": null,
"conditionType": "WebtestLocationAvailabilityCriteria",
"condition": {
"windowSize": "PT5M",
"allOf": [
{
"metricName": "Failed Location",
"metricNamespace": null,
"operator": "GreaterThan",
"threshold": "2",
"timeAggregation": "Sum",
"dimensions": [],
"metricValue": 5,
"webTestName": "myAvailabilityTest-myApplication"
}
],
"windowStartTime": "2019-03-22T13:40:03.064Z",
"windowEndTime": "2019-03-22T13:45:03.064Z"
}
}
}
Поля контекста оповещений для оповещений поиска по журналам
Примечание.
При включении общей схемы поля полезных данных сбрасываются на поля общей схемы. Таким образом, оповещения поиска по журналам имеют следующие ограничения в отношении общей схемы:
- Общая схема не поддерживается для уведомлений поиска по журналам с использованием вебхуков с пользовательской темой письма и/или JSON полезной нагрузки, поскольку общая схема перезаписывает пользовательские конфигурации.
- Оповещения, использующие общую схему, имеют верхний размер 256 КБ на оповещение. Если полезные данные для поиска по журналам содержат результаты поиска, которые приводят к тому, что размер предупреждения превышает максимально допустимый, результаты поиска не включены в полезные данные оповещений поиска по журналам. Вы можете проверить, включает ли нагрузка результаты поиска с помощью флага
IncludedSearchResults
. ИспользуйтеLinkToFilteredSearchResultsAPI
илиLinkToSearchResultsAPI
для доступа к результатам запроса с помощью API Log Analytics, если результаты поиска не включены в ответ.
Поле | Описание |
---|---|
ПоисковыйЗапрос | Запрос, определенный в правиле генерации оповещений. |
SearchIntervalStartTimeUtc | Время начала окна оценки, в котором оповещение было запущено в формате UTC. |
SearchIntervalEndTimeUtc | Время окончания окна оценки, в котором оповещение было запущено в формате UTC. |
КоличествоРезультатов | Количество записей, возвращаемых запросом. Для правил измерения метрик число записей, соответствующих конкретной комбинации измерений. |
СсылкаНаРезультатыПоиска | Ссылка на результаты поиска. |
LinkToFilteredSearchResultsUI | Для правил измерения метрик ссылка на результаты поиска после фильтрации по сочетаниям измерений. |
LinkToSearchResultsAPI | Ссылка на результаты запроса с помощью API Log Analytics. |
LinkToFilteredSearchResultsAPI | Для правил измерения метрик, ссылка на результаты поиска с помощью Log Analytics API после фильтрации по сочетаниям параметров. |
Минимальная продолжительность интервала поиска | Общее количество минут в интервале поиска. |
ИнтервалПоискаВМинуту | Общее количество минут в интервале поиска. |
Порог | Пороговое значение, определенное в правиле генерации оповещений. |
Оператор | Оператор, определенный в правиле генерации оповещений. |
ApplicationID | Идентификатор Application Insights, на котором было сработано оповещение. |
Измерения | Для правил измерения метрик те размеры, на которых было вызвано оповещение. |
имя | Имя измерения. |
значение | Значение параметра измерения. |
Результаты поиска | Полные результаты поиска. |
стол | Таблица результатов в результатах поиска. |
имя | Имя таблицы в результатах поиска. |
столбцы | Столбцы в таблице. |
имя | Имя столбца. |
тип | Тип столбца. |
строки | Строки в таблице. |
Источники данных | Источники данных, в которых активируется оповещение. |
идентификатор ресурса | Идентификатор ресурса, затронутый оповещением. |
Таблицы | Черновики таблиц ответов, включенные в запрос. |
ВключенныеРезультатыПоиска | Флаг, указывающий, должна ли нагрузка содержать результаты. |
Тип предупреждения | Тип оповещения: - Измерение метрик — количество результатов |
Пример оповещения о поисковом запросе по журналам, когда служба мониторинга — Log Analytics
{
"alertContext": {
"SearchQuery": "Perf | where ObjectName == \"Processor\" and CounterName == \"% Processor Time\" | summarize AggregatedValue = avg(CounterValue) by bin(TimeGenerated, 5m), Computer",
"SearchIntervalStartTimeUtc": "3/22/2019 1:36:31 PM",
"SearchIntervalEndtimeUtc": "3/22/2019 1:51:31 PM",
"ResultCount": 2,
"LinkToSearchResults": "https://portal.azure.com/#Analyticsblade/search/index?_timeInterval.intervalEnd=2018-03-26T09%3a10%3a40.0000000Z&_timeInterval.intervalDuration=3600&q=Usage",
"LinkToFilteredSearchResultsUI": "https://portal.azure.com/#Analyticsblade/search/index?_timeInterval.intervalEnd=2018-03-26T09%3a10%3a40.0000000Z&_timeInterval.intervalDuration=3600&q=Usage",
"LinkToSearchResultsAPI": "https://api.loganalytics.io/v1/workspaces/workspaceID/query?query=Heartbeat×pan=2020-05-07T18%3a11%3a51.0000000Z%2f2020-05-07T18%3a16%3a51.0000000Z",
"LinkToFilteredSearchResultsAPI": "https://api.loganalytics.io/v1/workspaces/workspaceID/query?query=Heartbeat×pan=2020-05-07T18%3a11%3a51.0000000Z%2f2020-05-07T18%3a16%3a51.0000000Z",
"SeverityDescription": "Warning",
"WorkspaceId": "12345a-1234b-123c-123d-12345678e",
"SearchIntervalDurationMin": "15",
"AffectedConfigurationItems": [
"INC-Gen2Alert"
],
"SearchIntervalInMinutes": "15",
"Threshold": 10000,
"Operator": "Less Than",
"Dimensions": [
{
"name": "Computer",
"value": "INC-Gen2Alert"
}
],
"SearchResults": {
"tables": [
{
"name": "PrimaryResult",
"columns": [
{
"name": "$table",
"type": "string"
},
{
"name": "Computer",
"type": "string"
},
{
"name": "TimeGenerated",
"type": "datetime"
}
],
"rows": [
[
"Fabrikam",
"33446677a",
"2018-02-02T15:03:12.18Z"
],
[
"Contoso",
"33445566b",
"2018-02-02T15:16:53.932Z"
]
]
}
],
"dataSources": [
{
"resourceId": "/subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/resourcegroups/test/providers/microsoft.operationalinsights/workspaces/test",
"tables": [
"Heartbeat"
]
}
]
},
"IncludedSearchResults": "True",
"AlertType": "Metric measurement"
}
}
Пример оповещения о поиске в журналах, когда служба мониторинга — Application Insights
{
"alertContext": {
"SearchQuery": "requests | where resultCode == \"500\" | summarize AggregatedValue = Count by bin(Timestamp, 5m), IP",
"SearchIntervalStartTimeUtc": "3/22/2019 1:36:33 PM",
"SearchIntervalEndtimeUtc": "3/22/2019 1:51:33 PM",
"ResultCount": 2,
"LinkToSearchResults": "https://portal.azure.com/AnalyticsBlade/subscriptions/12345a-1234b-123c-123d-12345678e/?query=search+*+&timeInterval.intervalEnd=2018-03-26T09%3a10%3a40.0000000Z&_timeInterval.intervalDuration=3600&q=Usage",
"LinkToFilteredSearchResultsUI": "https://portal.azure.com/AnalyticsBlade/subscriptions/12345a-1234b-123c-123d-12345678e/?query=search+*+&timeInterval.intervalEnd=2018-03-26T09%3a10%3a40.0000000Z&_timeInterval.intervalDuration=3600&q=Usage",
"LinkToSearchResultsAPI": "https://api.applicationinsights.io/v1/apps/0MyAppId0/metrics/requests/count",
"LinkToFilteredSearchResultsAPI": "https://api.applicationinsights.io/v1/apps/0MyAppId0/metrics/requests/count",
"SearchIntervalDurationMin": "15",
"SearchIntervalInMinutes": "15",
"Threshold": 10000.0,
"Operator": "Less Than",
"ApplicationId": "00001111-aaaa-2222-bbbb-3333cccc4444",
"Dimensions": [
{
"name": "IP",
"value": "1.1.1.1"
}
],
"SearchResults": {
"tables": [
{
"name": "PrimaryResult",
"columns": [
{
"name": "$table",
"type": "string"
},
{
"name": "Id",
"type": "string"
},
{
"name": "Timestamp",
"type": "datetime"
}
],
"rows": [
[
"Fabrikam",
"33446677a",
"2018-02-02T15:03:12.18Z"
],
[
"Contoso",
"33445566b",
"2018-02-02T15:16:53.932Z"
]
]
}
],
"dataSources": [
{
"resourceId": "/subscriptions/cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a/resourcegroups/test/providers/microsoft.operationalinsights/workspaces/test",
"tables": [
"Heartbeat"
]
}
]
},
"IncludedSearchResults": "True",
"AlertType": "Metric measurement"
}
}
Пример оповещения журнала поиска, когда служба мониторинга = Log Alerts V2
Примечание.
Правила оповещений поиска в журналах от API версии 2020-05-01 используют этот тип полезной нагрузки, который поддерживает только общую схему. Результаты поиска не включены в полезные данные оповещений при поиске по журналам в этой версии. Используйте измерения для предоставления контекста для запуска оповещений. Вы также можете использовать LinkToFilteredSearchResultsAPI
, или LinkToSearchResultsAPI
, чтобы получать доступ к результатам запроса с помощью Log Analytics API. Если необходимо встроить результаты, используйте логическое приложение с предоставленными ссылками для создания пользовательской нагрузки.
{
"alertContext": {
"properties": {
"name1": "value1",
"name2": "value2"
},
"conditionType": "LogQueryCriteria",
"condition": {
"windowSize": "PT10M",
"allOf": [
{
"searchQuery": "Heartbeat",
"metricMeasureColumn": "CounterValue",
"targetResourceTypes": "['Microsoft.Compute/virtualMachines']",
"operator": "LowerThan",
"threshold": "1",
"timeAggregation": "Count",
"dimensions": [
{
"name": "Computer",
"value": "TestComputer"
}
],
"metricValue": 0.0,
"failingPeriods": {
"numberOfEvaluationPeriods": 1,
"minFailingPeriodsToAlert": 1
},
"linkToSearchResultsUI": "https://portal.azure.com#@12345a-1234b-123c-123d-12345678e/blade/Microsoft_Azure_Monitoring_Logs/LogsBlade/source/Alerts.EmailLinks/scope/%7B%22resources%22%3A%5B%7B%22resourceId%22%3A%22%2Fsubscriptions%212345a-1234b-123c-123d-12345678e%2FresourceGroups%2FContoso%2Fproviders%2FMicrosoft.Compute%2FvirtualMachines%2FContoso%22%7D%5D%7D/q/eJzzSE0sKklKTSypUSjPSC1KVQjJzE11T81LLUosSU1RSEotKU9NzdNIAfJKgDIaRgZGBroG5roGliGGxlYmJlbGJnoGEKCpp4dDmSmKMk0A/prettify/1/timespan/2020-07-07T13%3a54%3a34.0000000Z%2f2020-07-09T13%3a54%3a34.0000000Z",
"linkToFilteredSearchResultsUI": "https://portal.azure.com#@12345a-1234b-123c-123d-12345678e/blade/Microsoft_Azure_Monitoring_Logs/LogsBlade/source/Alerts.EmailLinks/scope/%7B%22resources%22%3A%5B%7B%22resourceId%22%3A%22%2Fsubscriptions%212345a-1234b-123c-123d-12345678e%2FresourceGroups%2FContoso%2Fproviders%2FMicrosoft.Compute%2FvirtualMachines%2FContoso%22%7D%5D%7D/q/eJzzSE0sKklKTSypUSjPSC1KVQjJzE11T81LLUosSU1RSEotKU9NzdNIAfJKgDIaRgZGBroG5roGliGGxlYmJlbGJnoGEKCpp4dDmSmKMk0A/prettify/1/timespan/2020-07-07T13%3a54%3a34.0000000Z%2f2020-07-09T13%3a54%3a34.0000000Z",
"linkToSearchResultsAPI": "https://api.loganalytics.io/v1/subscriptions/12345a-1234b-123c-123d-12345678e/resourceGroups/Contoso/providers/Microsoft.Compute/virtualMachines/Contoso/query?query=Heartbeat%7C%20where%20TimeGenerated%20between%28datetime%282020-07-09T13%3A44%3A34.0000000%29..datetime%282020-07-09T13%3A54%3A34.0000000%29%29×pan=2020-07-07T13%3a54%3a34.0000000Z%2f2020-07-09T13%3a54%3a34.0000000Z",
"linkToFilteredSearchResultsAPI": "https://api.loganalytics.io/v1/subscriptions/12345a-1234b-123c-123d-12345678e/resourceGroups/Contoso/providers/Microsoft.Compute/virtualMachines/Contoso/query?query=Heartbeat%7C%20where%20TimeGenerated%20between%28datetime%282020-07-09T13%3A44%3A34.0000000%29..datetime%282020-07-09T13%3A54%3A34.0000000%29%29×pan=2020-07-07T13%3a54%3a34.0000000Z%2f2020-07-09T13%3a54%3a34.0000000Z"
}
],
"windowStartTime": "2020-07-07T13:54:34Z",
"windowEndTime": "2020-07-09T13:54:34Z"
}
}
}
Поля контекста оповещения для оповещений журнала действий
См. схему событий журнала действий Azure для получения подробной информации о полях в оповещениях журнала действий.
Пример предупреждения журнала активности, когда служба мониторинга = журнал активности — административный.
{
"alertContext": {
"authorization": {
"action": "Microsoft.Compute/virtualMachines/restart/action",
"scope": "/subscriptions/<subscription ID>/resourceGroups/PipeLineAlertRG/providers/Microsoft.Compute/virtualMachines/WCUS-R2-ActLog"
},
"channels": "Operation",
"claims": "{\"aud\":\"https://management.core.windows.net/\",\"iss\":\"https://sts.windows.net/12345a-1234b-123c-123d-12345678e/\",\"iat\":\"1553260826\",\"nbf\":\"1553260826\",\"exp\":\"1553264726\",\"aio\":\"42JgYNjdt+rr+3j/dx68v018XhuFAwA=\",\"appid\":\"11112222-bbbb-3333-cccc-4444dddd5555\",\"appidacr\":\"2\",\"http://schemas.microsoft.com/identity/claims/identityprovider\":\"https://sts.windows.net/12345a-1234b-123c-123d-12345678e/\",\"http://schemas.microsoft.com/identity/claims/objectidentifier\":\"22223333-cccc-4444-dddd-5555eeee6666\",\"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier\":\"22223333-cccc-4444-dddd-5555eeee6666\",\"http://schemas.microsoft.com/identity/claims/tenantid\":\"12345a-1234b-123c-123d-12345678e\",\"uti\":\"v5wYC9t9ekuA2rkZSVZbAA\",\"ver\":\"1.0\"}",
"caller": "22223333-cccc-4444-dddd-5555eeee6666",
"correlationId": "aaaa0000-bb11-2222-33cc-444444dddddd",
"eventSource": "Administrative",
"eventTimestamp": "2019-03-22T13:56:31.2917159+00:00",
"eventDataId": "161fda7e-1cb4-4bc5-9c90-857c55a8f57b",
"level": "Informational",
"operationName": "Microsoft.Compute/virtualMachines/restart/action",
"operationId": "310db69b-690f-436b-b740-6103ab6b0cba",
"status": "Succeeded",
"subStatus": "",
"submissionTimestamp": "2019-03-22T13:56:54.067593+00:00"
}
}
Пример оповещения журнала действий, когда служба мониторинга = журнал действий - политика
{
"alertContext": {
"authorization": {
"action": "Microsoft.Resources/checkPolicyCompliance/read",
"scope": "/subscriptions/<GUID>"
},
"channels": "Operation",
"claims": "{\"aud\":\"https://management.azure.com/\",\"iss\":\"https://sts.windows.net/<GUID>/\",\"iat\":\"1566711059\",\"nbf\":\"1566711059\",\"exp\":\"1566740159\",\"aio\":\"42FgYOhynHNw0scy3T/bL71+xLyqEwA=\",\"appid\":\"<GUID>\",\"appidacr\":\"2\",\"http://schemas.microsoft.com/identity/claims/identityprovider\":\"https://sts.windows.net/<GUID>/\",\"http://schemas.microsoft.com/identity/claims/objectidentifier\":\"<GUID>\",\"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier\":\"<GUID>\",\"http://schemas.microsoft.com/identity/claims/tenantid\":\"<GUID>\",\"uti\":\"Miy1GzoAG0Scu_l3m1aIAA\",\"ver\":\"1.0\"}",
"caller": "<GUID>",
"correlationId": "<GUID>",
"eventSource": "Policy",
"eventTimestamp": "2019-08-25T11:11:34.2269098+00:00",
"eventDataId": "<GUID>",
"level": "Warning",
"operationName": "Microsoft.Authorization/policies/audit/action",
"operationId": "<GUID>",
"properties": {
"isComplianceCheck": "True",
"resourceLocation": "eastus2",
"ancestors": "<GUID>",
"policies": "[{\"policyDefinitionId\":\"/providers/Microsoft.Authorization/policyDefinitions/<GUID>/\",\"policySetDefinitionId\":\"/providers/Microsoft.Authorization/policySetDefinitions/<GUID>/\",\"policyDefinitionReferenceId\":\"vulnerabilityAssessmentMonitoring\",\"policySetDefinitionName\":\"<GUID>\",\"policyDefinitionName\":\"<GUID>\",\"policyDefinitionEffect\":\"AuditIfNotExists\",\"policyAssignmentId\":\"/subscriptions/<GUID>/providers/Microsoft.Authorization/policyAssignments/SecurityCenterBuiltIn/\",\"policyAssignmentName\":\"SecurityCenterBuiltIn\",\"policyAssignmentScope\":\"/subscriptions/<GUID>\",\"policyAssignmentSku\":{\"name\":\"A1\",\"tier\":\"Standard\"},\"policyAssignmentParameters\":{}}]"
},
"status": "Succeeded",
"subStatus": "",
"submissionTimestamp": "2019-08-25T11:12:46.1557298+00:00"
}
}
Пример оповещения журнала действий, когда служба мониторинга = журнал действий — автомасштабирование
{
"alertContext": {
"channels": "Admin, Operation",
"claims": "{\"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/spn\":\"Microsoft.Insights/autoscaleSettings\"}",
"caller": "Microsoft.Insights/autoscaleSettings",
"correlationId": "<GUID>",
"eventSource": "Autoscale",
"eventTimestamp": "2019-08-21T16:17:47.1551167+00:00",
"eventDataId": "<GUID>",
"level": "Informational",
"operationName": "Microsoft.Insights/AutoscaleSettings/Scaleup/Action",
"operationId": "<GUID>",
"properties": {
"description": "The autoscale engine attempting to scale resource '/subscriptions/d<GUID>/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachineScaleSets/testVMSS' from 9 instances count to 10 instances count.",
"resourceName": "/subscriptions/<GUID>/resourceGroups/voiceassistancedemo/providers/Microsoft.Compute/virtualMachineScaleSets/alexademo",
"oldInstancesCount": "9",
"newInstancesCount": "10",
"activeAutoscaleProfile": "{\r\n \"Name\": \"Auto created scale condition\",\r\n \"Capacity\": {\r\n \"Minimum\": \"1\",\r\n \"Maximum\": \"10\",\r\n \"Default\": \"1\"\r\n },\r\n \"Rules\": [\r\n {\r\n \"MetricTrigger\": {\r\n \"Name\": \"Percentage CPU\",\r\n \"Namespace\": \"microsoft.compute/virtualmachinescalesets\",\r\n \"Resource\": \"/subscriptions/<GUID>/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachineScaleSets/testVMSS\",\r\n \"ResourceLocation\": \"eastus\",\r\n \"TimeGrain\": \"PT1M\",\r\n \"Statistic\": \"Average\",\r\n \"TimeWindow\": \"PT5M\",\r\n \"TimeAggregation\": \"Average\",\r\n \"Operator\": \"GreaterThan\",\r\n \"Threshold\": 0.0,\r\n \"Source\": \"/subscriptions/<GUID>/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachineScaleSets/testVMSS\",\r\n \"MetricType\": \"MDM\",\r\n \"Dimensions\": [],\r\n \"DividePerInstance\": false\r\n },\r\n \"ScaleAction\": {\r\n \"Direction\": \"Increase\",\r\n \"Type\": \"ChangeCount\",\r\n \"Value\": \"1\",\r\n \"Cooldown\": \"PT1M\"\r\n }\r\n }\r\n ]\r\n}",
"lastScaleActionTime": "Wed, 21 Aug 2019 16:17:47 GMT"
},
"status": "Succeeded",
"submissionTimestamp": "2019-08-21T16:17:47.2410185+00:00"
}
}
Пример оповещения о журнале действий при службе мониторинга = Журнал действий - безопасность
{
"alertContext": {
"channels": "Operation",
"correlationId": "<GUID>",
"eventSource": "Security",
"eventTimestamp": "2019-08-26T08:34:14+00:00",
"eventDataId": "<GUID>",
"level": "Informational",
"operationName": "Microsoft.Security/locations/alerts/activate/action",
"operationId": "<GUID>",
"properties": {
"threatStatus": "Quarantined",
"category": "Virus",
"threatID": "2147519003",
"filePath": "C:\\AlertGeneration\\test.eicar",
"protectionType": "Windows Defender",
"actionTaken": "Blocked",
"resourceType": "Virtual Machine",
"severity": "Low",
"compromisedEntity": "testVM",
"remediationSteps": "[\"No user action is necessary\"]",
"attackedResourceType": "Virtual Machine"
},
"status": "Active",
"submissionTimestamp": "2019-08-26T09:28:58.3019107+00:00"
}
}
Пример оповещения журнала действий, когда monitoringService = ServiceHealth
{
"alertContext": {
"authorization": null,
"channels": 1,
"claims": null,
"caller": null,
"correlationId": "bbbb1111-cc22-3333-44dd-555555eeeeee",
"eventSource": "ServiceHealth,
"eventTimestamp": "2019-06-24T11:31:19.0312699+00:00",
"httpRequest": null,
"eventDataId": "<GUID>",
"level": "Informational",
"operationName": "Microsoft.ServiceHealth/maintenance/action",
"operationId": "<GUID>",
"properties": {
"title": "Azure Synapse Analytics Scheduled Maintenance Pending",
"service": "Azure Synapse Analytics",
"region": "East US",
"communication": "<MESSAGE>",
"incidentType": "Maintenance",
"trackingId": "<GUID>",
"impactStartTime": "2019-06-26T04:00:00Z",
"impactMitigationTime": "2019-06-26T12:00:00Z",
"impactedServices": "[{\"ImpactedRegions\":[{\"RegionName\":\"East US\"}],\"ServiceName\":\"Azure Synapse Analytics\"}]",
"impactedServicesTableRows": "<tr>\r\n<td align='center' style='padding: 5px 10px; border-right:1px solid black; border-bottom:1px solid black'>Azure Synapse Analytics</td>\r\n<td align='center' style='padding: 5px 10px; border-bottom:1px solid black'>East US<br></td>\r\n</tr>\r\n",
"defaultLanguageTitle": "Azure Synapse Analytics Scheduled Maintenance Pending",
"defaultLanguageContent": "<MESSAGE>",
"stage": "Planned",
"communicationId": "<GUID>",
"maintenanceId": "<GUID>",
"isHIR": "false",
"version": "0.1.1"
},
"status": "Active",
"subStatus": null,
"submissionTimestamp": "2019-06-24T11:31:31.7147357+00:00",
"ResourceType": null
}
}
Пример оповещения в журнале действий, когда monitoringService = ResourceHealth
{
"alertContext": {
"channels": "Admin, Operation",
"correlationId": "<GUID>",
"eventSource": "ResourceHealth",
"eventTimestamp": "2019-06-24T15:42:54.074+00:00",
"eventDataId": "<GUID>",
"level": "Informational",
"operationName": "Microsoft.Resourcehealth/healthevent/Activated/action",
"operationId": "<GUID>",
"properties": {
"title": "This virtual machine is stopping and deallocating as requested by an authorized user or process",
"details": null,
"currentHealthStatus": "Unavailable",
"previousHealthStatus": "Available",
"type": "Downtime",
"cause": "UserInitiated"
},
"status": "Active",
"submissionTimestamp": "2019-06-24T15:45:20.4488186+00:00"
}
}
Поля контекста оповещений для оповещений Prometheus
См. управляемую службу Azure Monitor для групп правил Prometheus для получения подробной информации о полях оповещений Prometheus.
Пример оповещения Prometheus
{
"alertContext": {
"interval": "PT1M",
"expression": "sql_up > 0",
"expressionValue": "0",
"for": "PT2M",
"labels": {
"Environment": "Prod",
"cluster": "myCluster1"
},
"annotations": {
"summary": "alert on SQL availability"
},
"ruleGroup": "/subscriptions/<subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.AlertsManagement/prometheusRuleGroups/myRuleGroup"
}
}
Поля настраиваемых свойств
Если правило генерации оповещений содержит группы действий, настраиваемые свойства могут содержать дополнительные сведения об оповещении. В разделе настраиваемых свойств содержатся пары "ключ-значение", добавляемые в уведомления вебхука.
Если настраиваемые свойства не заданы в правиле генерации оповещений, поле равно NULL.
Включение общей схемы оповещений
Для включения общей схемы оповещений используйте группы действий на портале Azure или REST API. Схемы определяются на уровне действия. Например, необходимо отдельно включить схему для действия с электронной почтой и схему для действия веб-перехватчика.
Включите общую схему в портале Azure
- Откройте любое существующее или новое действие в группе действий.
- Выберите Да, чтобы включить общую схему оповещений.
Включение общей схемы с помощью REST API
Вы также можете использовать API групп действий, чтобы согласиться на использование общей схемы оповещений. При создании или обновлении вызова REST API
- Задайте флаг useCommonAlertSchema в
true
, чтобы включить общую схему. - Задайте флаг useCommonAlertSchema в
false
, чтобы использовать не общую схему для электронной почты, веб-перехватчика, Logic Apps, Функций Azure или действий службы автоматизации runbook.
Пример вызова REST API для использования общей схемы
Следующий запрос REST API для создания или обновления:
- Включает общую схему оповещений для действия с электронной почтой "Электронная почта Джона Доу".
- Отключает общую схему оповещений для действия "Электронное письмо Джейн Смит".
- Включает общую схему оповещений для действия веб-перехватчика "Пример веб-перехватчика".
{
"properties": {
"groupShortName": "sample",
"enabled": true,
"emailReceivers": [
{
"name": "John Doe's email",
"emailAddress": "[email protected]",
"useCommonAlertSchema": true
},
{
"name": "Jane Smith's email",
"emailAddress": "[email protected]",
"useCommonAlertSchema": false
}
],
"smsReceivers": [
{
"name": "John Doe's mobile",
"countryCode": "1",
"phoneNumber": "1234567890"
},
{
"name": "Jane Smith's mobile",
"countryCode": "1",
"phoneNumber": "0987654321"
}
],
"webhookReceivers": [
{
"name": "Sample webhook",
"serviceUri": "http://www.example.com/webhook",
"useCommonAlertSchema": true
}
]
},
"location": "Global",
"tags": {}
}