Konfigurieren von Integritätsbenachrichtigungen für vorhandene Problemverwaltungssysteme mit einem Webhook
In diesem Artikel wird beschrieben, wie Sie Azure Service Health-Warnungen zum Senden von Daten über Webhooks an Ihr vorhandenes Benachrichtigungssystem konfigurieren.
Sie können Service Health-Warnungen so konfigurieren, dass Sie per SMS oder E-Mail benachrichtigt werden, wenn Sie von einem Azure-Dienstvorfall betroffen sind.
Möglicherweise verfügen Sie aber bereits über ein externes Benachrichtigungssystem, das Sie lieber verwenden möchten. In diesem Artikel werden die wichtigsten Teile der Webhooknutzlast identifiziert. Außerdem wird beschrieben, wie Sie benutzerdefinierte Warnungen erstellen, damit Sie benachrichtigt werden, wenn relevante Dienstprobleme auftreten.
Wenn Sie eine vorkonfigurierte Integration verwenden möchten, lesen Sie die folgenden Artikel:
- Konfigurieren von Warnungen mit ServiceNow
- Konfigurieren von Warnungen mit PagerDuty
- Konfigurieren von Warnungen mit OpsGenie
Sehen Sie sich ein Einführungsvideo an:
Konfigurieren einer benutzerdefinierten Benachrichtigung mit der Service Health-Webhooknutzlast
Wenn Sie Ihre eigene benutzerdefinierte Webhookintegration einrichten möchten, müssen Sie die über die Service Health-Benachrichtigung gesendete JSON-Nutzlast analysieren.
Hier finden Sie ein Beispiel für die ServiceHealth
-Webhooknutzlast.
Durch einen Blick auf context.eventSource == "ServiceHealth"
können Sie bestätigen, dass dies eine Service Health-Warnung ist. Die folgenden Eigenschaften sind die relevantesten:
- 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
Erstellen eines Links zum Service Health-Dashboard für einen Vorfall
Sie können einen direkten Link zu Ihrem Service Health-Dashboard auf einem Desktop oder mobilen Gerät erstellen, indem Sie eine spezialisierte URL generieren. Verwenden Sie die Nachverfolgungs-ID (trackingId) und die ersten drei und die letzten drei Ziffern Ihrer Abonnement-ID (subscriptionId) im folgenden Format:
https://app.azure.com/h/<Nachverfolgungs-ID>/<die ersten drei und die letzten drei Ziffern der Abonnement-ID>
Wenn Ihre Abonnement-ID (subscriptionId) z. B. „ aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e“ und Ihre Nachverfolgungs-ID (trackingId) „0DET-URB“ lautet, sieht Ihre Service Health-URL folgendermaßen aus:
https://app.azure.com/h/0DET-URB/bbadb3
Erkennen des Schweregrads des Problems anhand der Level-Eigenschaft
Vom niedrigsten zum höchsten Schweregrad kann die level-Eigenschaft in der Nutzlast den Wert Informativ, Warnung, Fehler oder Kritisch aufweisen.
Analysieren der betroffenen Dienste zum Ermitteln des Ausmaßes des Vorfalls
Service Health-Warnungen informieren Sie über Probleme über mehrere Regionen und Dienste hinweg. Um die vollständigen Details zu erhalten, müssen Sie den Wert von impactedServices
analysieren.
Der enthaltene Inhalt ist eine JSON-Zeichenfolge mit Escapezeichen, die ohne Escapezeichen ein anderes JSON-Objekt enthält, das normal analysiert werden kann. Zum Beispiel:
{"data.context.activityLog.properties.impactedServices": "[{\"ImpactedRegions\":[{\"RegionName\":\"Australia East\"},{\"RegionName\":\"Australia Southeast\"}],\"ServiceName\":\"Alerts & Metrics\"},{\"ImpactedRegions\":[{\"RegionName\":\"Australia Southeast\"}],\"ServiceName\":\"App Service\"}]"}
wird:
[
{
"ImpactedRegions":[
{
"RegionName":"Australia East"
},
{
"RegionName":"Australia Southeast"
}
],
"ServiceName":"Alerts & Metrics"
},
{
"ImpactedRegions":[
{
"RegionName":"Australia Southeast"
}
],
"ServiceName":"App Service"
}
]
In diesem Beispiel wird gezeigt, dass Probleme bestehen bei:
- „Warnungen & Metriken“ in „Australien, Osten“ und „Australien, Südosten“.
- „App Service“ in „Australien, Südosten“.
Testen der Webhookintegration über eine HTTP POST-Anforderung
Führen Sie folgende Schritte aus:
Erstellen Sie die Service Health-Nutzlast, die Sie senden möchten. Ein Beispiel für eine Service Health-Webhooknutzlast finden Sie unter Webhooks für Azure-Aktivitätsprotokollwarnungen.
Erstellen Sie eine HTTP POST-Anforderung, indem Sie wie folgt vorgehen:
POST https://your.webhook.endpoint HEADERS Content-Type: application/json BODY <service health payload>
Sie sollten eine Antwort vom Typ „2xx“ (erfolgreich) erhalten.
Wechseln Sie zu PagerDuty, um zu überprüfen, ob Ihre Integration erfolgreich eingerichtet wurde.
Nächste Schritte
- Weitere Informationen zum Webhookschema für Aktivitätsprotokollwarnungen.
- Weitere Informationen zu Dienstintegritätsbenachrichtigungen.
- Weitere Informationen zu Aktionsgruppen.