Behebung von Vorfällen mit Webhook-Ereignissen

Als Administrator, der für die Hardware-Infrastruktur verantwortlich ist, können Sie Webhook-Ereignisobjekte mit Ihrem Ticket-System für die Behebung von Vorfällen verwenden. Dieses Objekt arbeitet mit der Event Engine-Funktion und unterstützt Sie bei der schnellen Lösung von Standardvorfällen, wodurch Sie Zeit sparen, um schwierige Probleme zu lösen.

Mehr Informationen:

Diese Event Engine-Funktion kann dazu verwendet werden, auf interne und externe Ereignisse zu reagieren. Der folgende Anwendungsfall basiert auf einem externen Ereignis, das ein Webhook-Ereignisobjekt verwendet, um eingehende externe Ereignis-Nutzdaten zu überwachen und zu empfangen.

Diese Seite beinhaltet Folgendes:

Was werde ich lernen?

Voraussetzungen

Um die Funktion Webhook-Ereignis nutzen zu können, sind die folgenden Komponenten und Kenntnisse erforderlich:

Hinweis: Wenn sie nicht in der Seitenleiste des Explorers aufgelistet sind, müssen Sie sie von unserem Marketplace unter https://marketplace.automic.com/ herunterladen und installieren. Anweisungen zur Installation eines Action Packs finden Sie unter Packs installieren in Mit Packs und Plug-ins arbeiten.

Mehr Informationen:

Beschreibung des Anwendungsfalls

Dieses Beispiel basiert auf folgendem Szenario:

Das folgende Diagramm zeigt das Vorgehen bei der Fehlerbehebung:

Das Diagramm zeigt das Vorgehen bei der Fehlerbehebung

Einen begrenzten API-Schlüsselerstellen

Für Webhook-Endpunkte ist ein begrenzter API-Schlüssel erforderlich. Der begrenzte Schlüssel muss für den Mandanten generiert werden, auf dem das Webhook-Objekt ausgeführt wird. Wenn die externe Webhook-API (zum Beispiel JIRA) den Berechtigungsschlüssel im HTTP-Header nicht senden kann, kann er auch als URL-Parameter bereitgestellt werden.

 

Beispiel:

http://host:port/analytics/api/v1/100/12345?authorization=1cb812db-6616-49da-af97-3719aeaddc24

 

Weitere Informationen finden Sie unter Analytics REST API – Allgemeine Informationen

Eine IA-Ereignisdefinition erstellen

Die erste Phase besteht darin, eine IA-Ereignisdefinition für die eingehende JIRA-Ereignisnutzlast zu erstellen. Sie enthält die Ereignisstruktur, die die Ereignis-Engine benötigt, um Regeln auszulösen und Prozesse auszuführen (z. B. Jobs).

In diesem Beispiel werden wir eine Ereignisdefinition mit Attributschlüsseln erstellen, basierend auf einem issue created-Ereignis von JIRA.

  1. Melden Sie sich bei einem Automation Engine-Mandanten an, wo ein IA-Agent zugewiesen ist. Siehe: Mandanten den Agenten zuordnen
  2. Eine IA-Ereignisdefinition erstellen. Klicken Sie auf Process Assembly in AWI. Dann:

    • Klicken Sie in der Symbolleiste auf Objekt hinzufügen
    • Variablenbaum auswählen und erweitern
    • Wählen Sie XML-Variablen aus und erweitern Sie sie, und wählen Sie dann IA > EVENT_DEFINITION-Variable, um das Definitionsblatt zu erstellen.
    • Benennen Sie das IA-Ereignisdefinitionsblatt in JIRA.ISSUE.EVENT
      um
  3. Fügen Sie der neu erstellten Ereignisdefinition JIRA.ISSUE.EVENT die Attributschlüssel hinzu. Dazu müssen Sie den Inhalt und die Struktur der empfangenen JIRA-Ereignisnutzlast kennen.
    Es gibt verschiedene Möglichkeiten, diese Informationen zu erhalten:

    • Verwenden Sie JIRA-Webhook-Webseiten, um die Ressourcen zu beschaffen
    • Erstellen oder verwenden Sie einen vorhandenen Endpunkt, um eine Testereignis-Nutzlast zu erstellen

    Wichtig! Die JIRA-Ereignisnutzlast basiert auf dem strukturierten Schema von JSONPath. Wenn die Spalte Schlüsselattribute der Ereignisdefinition gefüllt wird, muss das Schema in eine flache Struktur umgewandelt werden.

    Das folgende Beispiel zeigt, wie die JSONPath-Strukturdaten in eine flache Struktur umgewandelt werden.

    Das folgende Beispiel zeigt Ihnen, wie Sie Ihre empfangenen JSONPath-Strukturdaten in eine flache Struktur umwandeln können.

    Hinweis: Obwohl es keine Regel für die Benennung von Schlüsselattributen gibt, werden sie so benannt, wie sie in JSON angezeigt werden. Auf diese Weise können Sie sie einfach zuordnen, wenn Sie ein Webhook-Ereignis erstellen.

    Die folgenden Spalten werden gefüllt:

    • Attributschlüssel
    • Beschreibung  
    • Typ

    Die Informationen, die zur Erstellung der Ereignisdefinition verwendet werden, basieren größtenteils auf Feldern im Hinblick auf JIRAissue, Sie haben jedoch auch Benutzer- und Ereignis-bezogene Felder.

    Hier folgt die vollständige Liste, die in der Attributschlüssel-Spalte der Ereignisdefinition erstellt wurde:

    Erstellen und Zuordnen des Webhook-Ereignisses

    Damit haben Sie die Ereignisdefinition JIRA.ISSUE.EVENT erstellt und gefüllt. Jetzt können Sie einWebhook-Ereignisobjekt in AWI erstellen.

    Jetzt erstellen Sie einen Endpunkt für JIRA, damit es Ereignisnutzdaten an die Event Engine senden kann, wo sie verarbeitet werden.

    1. Klicken Sie im AWI auf Process Assembly.

      • Klicken Sie in der Symbolleiste auf Objekt hinzufügen
      • Ereignisbaum (EVNT) auswählen und erweitern
      • IA-Variablen auswählen und erweitern und WEBHOOK Ereignis auswählen
    2. Im Webhook-Ereignis wählen wir die Ereignisdefinition JIRA.ISSUE.EVENT aus der Dropdown-Liste aus.

      Dem Webhook-Ereignis eine Ereignisdefinition hinzufügen


    3. Sie müssen nun alle Attributschlüssel im Ereignisdefinition-Blatt dem JSON-Pfad zuordnen. Inhalt und die Struktur sind bereits in der JIRA-Ereignisnutzlast bekannt, da Sie dies bereits beim Erstellen der Ereignisdefinition JIRA.ISSUE.EVENT verwendet haben.

      Wichtig! Testen Sie immer Ihre JSONPath-Ausdrücke für die Event Engine, bevor Sie sie in die Produktion übernehmen. JSONPath-Ausdrücke, die in externen Tools erstellt wurden, funktionieren möglicherweise nicht erwartungsgemäß, da es keinen allgemeinen Standard für die JSONPath-Abfragesyntax gibt.

      Schließlich wird jeder Attributschlüssel seinem entsprechenden JSONPath zugeordnet.

      Im folgenden Beispiel wurde jeder Attributschlüssel dem entsprechenden JSONPath zugeordnet.

    4. Um eine Regel in der Event Engine auszulösen, erstellen Sie einen bedingten Filter, der angewendet wird, wenn ein issue_created-Ereignis empfangen wird.

      Unter Verwendung vonJIRA-Online-Informationen für die Syntax erstellen wir den folgenden Filter:

      $webhookEvent is equal to jira:issue_created.

      $webhookEvent is equal to jira:issue_created.

      Hinweis: Die Filter-Operator-Tabelle hat die gleichen Operatoren wie in Einfache Regel angegeben.