Share via


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:

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

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. „bba14129-e895-429b-8809-278e836ecdb3“ 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. 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