Freigeben über


Konfigurieren von Integritätsbenachrichtigungen für vorhandene Problemverwaltungssysteme mit einem Webhook

In diesem Artikel wird erläutert, wie Sie Azure Service Health-Warnungen einrichten, um Daten über Webhooks an Ihr vorhandenes Benachrichtigungssystem zu senden.

Sie können Dienstintegritätswarnungen zwar so konfigurieren, dass sie per SMS oder E-Mail benachrichtigt werden, wenn ein Azure-Dienstvorfall Sie betrifft, Sie sollten jedoch lieber ein vorhandenes externes Benachrichtigungssystem verwenden.

In diesem Leitfaden werden die wichtigsten Teile der Webhook-Nutzlast hervorgehoben und gezeigt, wie Sie benutzerdefinierte Warnungen erstellen, um Sie über relevante Dienstprobleme zu informieren.

Wenn Sie eine vorkonfigurierte Integration verwenden möchten, lesen Sie die folgenden Artikel:

Sehen Sie sich ein Einführungsvideo an:

Konfigurieren einer benutzerdefinierten Benachrichtigung mit der Service Health-Webhooknutzlast

Um Ihre eigene benutzerdefinierte Webhook-Integration einzurichten, müssen Sie die JSON-Nutzlast analysieren, die über die Service Health-Benachrichtigung gesendet wird.

Hier finden Sie ein Beispiel für dieServiceHealth-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:

  • daten.kontext.aktivitätsprotokoll.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 Sie einen direkten Link zu Ihrem Dienststatus-Dashboard auf einem Desktop oder mobilen Gerät, indem Sie eine spezielle 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.

Ermitteln des Umfangs 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 Inhalt ist eine maskierte JSON-Zeichenfolge, die, wenn sie unmaskiert wird, ein weiteres JSON-Objekt enthält, das regelmäßig 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:

  1. 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.

  2. 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.

  3. Wechseln Sie zu PagerDuty, um zu überprüfen, ob Ihre Integration erfolgreich eingerichtet wurde.

Nächste Schritte