Close

Automatisches Vorfallmanagement mit Jira und Statuspage

Kev Zettler Porträtfoto
Kev Zettler

Full-Stack-Webentwickler, DevOps

Erfahre, wie du mithilfe von Jira Automation-Regeln Statuspage automatisch mit Jira-Vorgängen synchronisieren kannst.

Zeit

Lesedauer: 5 Minuten.

Zielpublikum

Du bist ein erfahrener Benutzer von Jira Software und hast ein Statuspage-Konto.

Voraussetzungen

In deinem aktiven Jira-Projekt muss der benutzerdefinierte Aufgabentyp "Incident" (Vorfall) und das benutzerdefinierte Feld "Incident ID" (Vorfall-ID) vorhanden sein. Lege hier mit Jira los.

Du benötigst ein Statuspage-Konto mit aktiviertem API-Zugriff. Du benötigst außerdem deinen Statuspage-API-Schlüssel und den Seitencode, um die nachfolgend genannten Automatisierungsregeln zu konfigurieren. Wie du deine Statuspage-API-Schlüssel findest, wird im Statuspage-API-Leitfaden beschrieben. Lege hier mit Statuspage los.

Schritt 1: Automatisierung hinzufügen

Klicke auf die Schaltfläche Add automation (Automatisierung hinzufügen), und wähle dann die Option Issue (Vorgang) aus.

Klicken: "Add automation" (Automatisierung hinzufügen); Auswählen: "Issue" (Vorgang)

Wähle Issue created (Vorgang erstellt) aus.

Neuer Trigger. Trigger starten die Ausführung einer Regel. Trigger können auf Ereignisse warten oder nach einem Zeitplan ausgeführt werden.

Klicke auf die Schaltfläche Save (Speichern), um fortzufahren.

Vorgang erstellt. Diese Regel wird ausgeführt, wenn ein Vorgang erstellt wird. Dieser Trigger benötigt keine Konfiguration.

Schritt 2: Eine neue Bedingung erstellen

Wähle als Nächstes die Bedingung "Issue fields" (Vorgangsfelder) aus.

Wähle unter "New condition" (Neue Bedingung) die Option "Issue fileds" (Vorgangsfelder) aus. Dadurch wird geprüft, ob das Feld eines Vorgangs bestimmte Kriterien erfüllt.

Verwende die Bedingung "Issue fields" (Vorgangsfelder), um zu überprüfen, ob es sich beim Vorgangstyp um einen Incident (Vorfall) handelt. Ergreife entsprechende Maßnahmen. Konfiguriere die Bedingung "Issue fields" (Vorgangsfelder) so, dass im Feld Issue Type (Vorgangstyp) der Wert Incident (Vorfall) angezeigt wird. Klicke auf Save (Speichern), um fortzufahren.

Verwende die Bedingung "Issue fields" (Vorgangsfelder), um zu überprüfen, ob es sich beim Vorgangstyp um einen "Incident" (Vorfall) handelt. Ergreife entsprechende Maßnahmen. Konfiguriere die Bedingung "Issue fields" (Vorgangsfelder) so, dass der Wert im Feld "Issue Type" (Vorgangstyp) dem Wert "Incident" (Vorfall) entspricht. Klicke auf "Save" (Speichern), um fortzufahren.

Schritt 3: Eine Webanfrage senden

Wähle Send web request (Webanfrage senden) aus. Statuspage wird dann aktualisiert.

Neue Aktion. Wähle "Send web request" (Webanfrage senden) aus.

Um die Aktion Send web request (Webanfrage senden) zu konfigurieren, benötigst du deinen Statuspage-API-Schlüssel und den Seitencode. Diese Werte findest du in der Statuspage-Dokumentation. Send web request (Webanfrage senden) ist eine erweiterte Aktion mit sensiblen Eingabewerten. Weiter unten in diesem Leitfaden wird diese Aktion in zusätzlichen Regeln reproduziert, wobei auf diese Konfiguration Bezug genommen wird.

Gib im Feld Webhook URL die URL des Endpunkts für Statuspage-Vorfälle ein:
https://api.StatusPage.io/v1/pages/Seitencode/incidents

Ersetze den Platzhalter "Seitencode" durch deinen Statuspage-Seitencode. Gib im Header-Bereich in die beiden Header-Felder Authorization:OAuth und deinen API-Schlüssel ein.

Lege unter HTTP Method die Option POST fest und unter Webhook body (Webhook-Text) den Wert Custom Data (Benutzerdefinierte Daten).

Aktiviere unbedingt das Kontrollkästchen Wait For Response (Auf Antwort warten), da du Werte aus der Antwort auf die Webanfrage für weitere Komponenten benötigst.

Das Feld Custom Data (Benutzerdefinierte Daten) enthält Code, der eine Vorfallsnutzlast für die Statuspage-API definiert. In diesem Code werden intelligente Werte verwendet, um die Vorgangszusammenfassung zu extrahieren und der Nutzlast hinzuzufügen. Der folgende Screenshot zeigt die vollständige Konfiguration der Aktion Send web request (Webanfrage senden). Klicke auf Save (Speichern), um fortzufahren.

Webanfrage senden

Schritt 4: Aktion "Edit Issue" (Vorgang bearbeiten) erstellen

Wähle abschließend die Aktion Edit Issue (Vorgang bearbeiten) aus.

Neue Aktion: "Edit issue" (Vorgang bearbeiten)

Mit der Aktion Edit Issue (Vorgang bearbeiten) wird die Vorfall-ID aus der Statuspage-Anforderung extrahiert und in einem benutzerdefinierten Feld für die Vorfall-ID gespeichert. Die Vorfall-ID wird mithilfe intelligenter Werte extrahiert. Der folgende Screenshot zeigt, wie die Komponente Edit Issue (Vorgang bearbeiten) konfiguriert wird.

Vorgang bearbeiten. Lege Werte für Felder im Vorgang fest.

Der folgende Screenshot zeigt die abschließende Zusammenfassung dieser Regel.

Die endgültige Zusammenfassung der Regel

Diese Regel kann jetzt aktiviert werden. Gib einen Namen für die Regel ein, und klicke auf die Schaltfläche Turn it on (Aktivieren). Daten aus dieser Regel werden verwendet, um die folgenden Regeln zu erstellen.

Statuspage aktualisieren, wenn der Vorgang kommentiert wird

Diese nächste Regel wird ausgelöst, wenn in einem Vorgang vom Typ "Incident" (Vorfall) ein Kommentar hinterlassen wird. Eine Webanfrage wird an Statuspage gestellt, um den entsprechenden Vorfall mit dem Inhalt des Kommentars zu aktualisieren. Die folgende Abbildung zeigt die Zusammenfassung der Komponenten für diese Regel.

Statuspage-Kommentar zum Vorfall

Die wichtige Komponente, die in dieser Regel überprüft werden muss, ist die Aktion Send web request (Webanfrage senden). Diese Aktion wird aus der vorherigen Regel kopiert, jedoch mit einigen Änderungen.

Die Webhook URL wurde mit "/{{issue.incident_id}}" angehängt. Um das benutzerdefinierte Feld mit der Vorfall-ID aus dem Vorgang abzurufen und als Ziel der Webanforderung an Statuspage zu übergeben, werden intelligente Werte verwendet.

Unter HTTP Method ist jetzt PATCH statt POST festgelegt. Dies weist Statuspage an, einen vorhandenen Vorfall zu aktualisieren, statt einen neuen zu erstellen.

Das Feld Custom Data (Benutzerdefinierte Daten) wird geändert, um Code einzuschließen, der intelligente Werte verwendet, um den Kommentartext aus dem Vorgang zu extrahieren und in den Inhaltstext des Vorfalls einzufügen.

Statuspage-Kommentar zum Vorfall
Webanfrage senden

Den Statuspage-Vorfall schließen, wenn der Vorgang an den Status "Done" (Fertig) weitergegeben wird

Diese letzte Regel verbindet alles miteinander. Mit dieser Regel teilst du Statuspage mit, dass ein Vorfall gelöst wurde, wenn der entsprechende Jira-Vorgang den Status "Done" (Fertig) erhält. Die folgende Abbildung zeigt die Regelzusammenfassung.

Statuspage-Kommentar zum Vorfall

Die Webanfragekomponente wurde auch hier aus den vorherigen Regeln kopiert und geändert.

Webanfrage senden

Das Feld Custom Data (Benutzerdefinierte Daten) wurde geändert, um den Status des Vorfalls auf "Resolved" (Erledigt) zu setzen. Dies ist die einzige Änderung gegenüber der vorherigen Kommentarregel.

Diese Regeln sind jetzt einsatzbereit. Du kannst die Regeln testen, indem du Vorgänge vom Typ Incident (Vorfall) erstellst und Triggerinteraktionen durchführst. Du kannst das Verhalten der Regeln im Audit Log (Audit-Protokoll) von Automation überwachen, das Protokolle und Informationen zum Verhalten der Regeln bereitstellt. Die in diesem Leitfaden aufgeführten Automatisierungsregeln sind sehr gute Beispiele für erweiterte Nutzungsregeln für Webanfrage-APIs.

Hunderte weiterer Beispiele findest du in unserer Automation-Vorlagenbibliothek.

Kev Zettler
Kev Zettler

Kev ist ein führender Full-Stack-Webentwickler und Serienunternehmer mit über zehn Jahren Erfahrung beim Aufbau von Produkten und Teams mit agilen Methoden. Aufstrebende Open-Source-Technologien wie DevOps, Kryptowährung und Virtual/Augmented Reality sind seine große Leidenschaft – ob als Mitwirkender, Autor oder Lehrer. In seiner Freizeit nimmt er an Sessions zur Entwicklung von Indie-Games teil.


Diesen Artikel teilen
Nächstes Thema

Lesenswert

Füge diese Ressourcen deinen Lesezeichen hinzu, um mehr über DevOps-Teams und fortlaufende Updates zu DevOps bei Atlassian zu erfahren.

Abbildung: DevOps

DevOps-Community

Abbildung: DevOps

DevOps-Lernpfad

Abbildung: Karte

Kostenlos loslegen

Melde dich für unseren DevOps-Newsletter an

Thank you for signing up