Настройка уведомлений о работоспособности для систем управления проблемами с помощью веб-перехватчика
В этой статье объясняется, как настроить оповещения Работоспособности служб Azure для отправки данных через веб-перехватчики в существующую систему уведомлений.
Вы можете настроить оповещения о работоспособности служб таким образом, чтобы в случае, если вас затронет инцидент со службой Azure, вы получили уведомление в сообщении SMS или по электронной почте.
Однако у вас уже может быть установлена внешняя система уведомлений, которую вы хотите использовать. В этой статье объясняется, какие элементы полезных данных веб-перехватчика являются наиболее важными. В ней описано создание настраиваемых оповещений для уведомления об интересующих вас неполадках в службах.
Если вы хотите использовать предварительно настроенную интеграцию, см. следующие инструкции:
- Настройка оповещений с помощью ServiceNow.
- Настройка оповещений с помощью PagerDuty.
- Настройка оповещений с помощью OpsGenie.
Просмотрите видео с вводной информацией:
Настройка пользовательского уведомления с помощью полезных данных веб-перехватчика работоспособности служб
Чтобы настроить собственную интеграцию пользовательского веб-перехватчика, необходимо проанализировать полезные данные JSON, которые отправляются во время уведомлений о работоспособности служб.
См. пример полезных данных веб-перехватчика ServiceHealth
.
Оповещение о работоспособности служб можно распознать по элементу context.eventSource == "ServiceHealth"
. Наиболее важными являются следующие свойства:
- data.context.activityLog.status
- data.context.activityLog.level
- data.context.activityLog.subscriptionId
- data.context.activityLog.properties.title
- data.context.activityLog.properties.impactStartTime
- data.context.activityLog.properties.communication
- data.context.activityLog.properties.impactedServices
- data.context.activityLog.properties.trackingId
Создание ссылки на панель мониторинга "Работоспособность служб" для инцидента
Вы можете добавить прямую ссылку на панель мониторинга "Работоспособность служб" на рабочем столе или мобильном устройстве, создав специализированный URL-адрес. Используйте идентификатор trackingId, а также первые три и последние три цифры subscriptionId в следующем формате:
https://app.azure.com/h/<trackingId>/<первые три и последние три цифры subscriptionId>
Например, если идентификатор подписки — aaaa0a0a0a-bb1b-cc2c-dd3d-ee4e4e4e4e4e4e, а идентификатор отслеживания — 0DET-URB, URL-адрес работоспособности службы:
https://app.azure.com/h/0DET-URB/bbadb3
Определение серьезности проблемы по значению уровня
Свойство уровня level в полезных данных может иметь значения Информация, Предупреждение, Ошибка или Критическое (от низкого уровня до высокого).
Анализ затронутых служб для определения области инцидента
Оповещения о работоспособности служб могут информировать вас о проблемах, затрагивающих несколько регионов и служб. Чтобы получить полные сведения, необходимо проанализировать значение impactedServices
.
Его содержимое представляет собой экранированную строку JSON. После разэкранирования она будет содержать еще один объект JSON, который можно проанализировать обычным способом. Например:
{"data.context.activityLog.properties.impactedServices": "[{\"ImpactedRegions\":[{\"RegionName\":\"Australia East\"},{\"RegionName\":\"Australia Southeast\"}],\"ServiceName\":\"Alerts & Metrics\"},{\"ImpactedRegions\":[{\"RegionName\":\"Australia Southeast\"}],\"ServiceName\":\"App Service\"}]"}
Становится:
[
{
"ImpactedRegions":[
{
"RegionName":"Australia East"
},
{
"RegionName":"Australia Southeast"
}
],
"ServiceName":"Alerts & Metrics"
},
{
"ImpactedRegions":[
{
"RegionName":"Australia Southeast"
}
],
"ServiceName":"App Service"
}
]
Этот пример указывает на следующие проблемы:
- "Оповещения и метрики" в регионах "Восточная Австралия" и "Юго-Восточная Австралия".
- "Служба приложений" в регионе "Юго-Восточная Австралия".
Проверка интеграции с веб-перехватчиком с помощью запроса HTTP POST
Выполните следующие действия:
Создайте полезные данные о работоспособности служб, которые хотите отправить. Пример полезных данных для веб-перехватчика службы работоспособности служб см. в статье Веб-перехватчики для оповещений журнала действий Azure.
Создайте запрос HTTP POST следующим образом:
POST https://your.webhook.endpoint HEADERS Content-Type: application/json BODY <service health payload>
Вы должны получить ответ "2XX — успех".
Откройте PagerDuty и убедитесь, что интеграция настроена успешно.
Следующие шаги
- Просмотрите схему веб-перехватчика оповещений журнала действий в статье Объекты webhook для оповещений журнала действий Azure.
- Дополнительные сведения об уведомлениях о работоспособности службы см. в этой статье.
- Дополнительные сведения о группах действий см. в статье Создание групп действий и управление ими на портале Azure.