Automatyczne zarządzanie incydentami za pomocą Jira i StatusPage

Dowiedz się, jak korzystać z reguł automatyzacji Jira do automatycznej synchronizacji StatusPage ze zgłoszeniami Jira.
Czas
5 minut czytania.
Publiczność
Jesteś doświadczonym użytkownikiem Jira Software i masz konto Statuspage.
WARUNEK WSTĘPNY
Potrzebny będzie aktywny projekt Jira z niestandardowym typem zadania „Incydent” i niestandardowym polem „Identyfikator incydentu”. Przejdź tutaj, aby rozpocząć korzystanie z Jiry.
Potrzebne będzie konto Statuspage z włączonym dostępem API. Potrzebny będzie również klucz API Statuspage oraz kod strony, aby skonfigurować następujące reguły automatyzacji. Zapoznaj się z przewodnikiem interfejsu API Statuspage, aby zlokalizować klucze API Statuspage. Przejdź tutaj, aby rozpocząć korzystanie ze Statuspage.
Krok 1. Dodanie automatyzacji
Kliknij przycisk Add automation (Dodaj automatyzację), a następnie wybierz opcję Issue (Zgłoszenie).

Wyszukaj i wybierz Issue created (Utworzone zgłoszenie).

Kliknij przycisk Save (Zapisz), aby kontynuować.

Krok 2. Utworzenie nowego warunku
Następnie wyszukaj i wybierz warunek pól zgłoszenia.

Użyj opcji Warunek pól zgłoszeń, aby sprawdzić, czy typ zgłoszenia to Incydent, i wykonać adekwatne czynności. Skonfiguruj Warunek pól zgłoszeń tak, aby pole Typ zgłoszenia było równe wartości Incydent. Kliknij przycisk Zapisz, aby kontynuować.

Krok 3. Wysłanie żądania internetowego
Wybierz opcję Send web request (Wyślij żądanie internetowe), co spowoduje aktualizację StatusPage.

Do skonfigurowania czynności Send web request (Wyślij żądanie internetowe) potrzebny jest klucz API StatusPage oraz kod strony. Wartości te można znaleźć w dokumentacji StatusPage. Send web request (Wyślij żądanie internetowe) jest zaawansowaną czynnością z wrażliwymi wartościami wejściowymi. W dalszej części tego przewodnika czynność ta zostanie odtworzona w dodatkowych regułach i będzie odwoływać się do tej konfiguracji.
W polu Adres URL elementu webhook wprowadź adres URL punktu końcowego incydentów Statuspage:
Podmień symbol zastępczy kodu strony na kod strony StatusPage. W sekcji nagłówków wprowadź ciąg Authorization:OAuth i klucz API w dwóch polach nagłówka.
Ustaw wartość HTTP Method (Metoda HTTP) na POST i Webhook body (Treść webhooka) na Custom Data (Dane niestandardowe).
Upewnij się, że zaznaczone jest pole wyboru Wait For Response (Czekaj na odpowiedź), ponieważ będziesz używać wartości z odpowiedzi żądania internetowego w dodatkowych komponentach.
Pole Custom Data (Dane niestandardowe) zawiera kod definiujący ładunek zdarzenia dla interfejsu API StatusPage. Ten kod używa wartości inteligentnych, aby wyodrębnić i dodać podsumowanie zgłoszenia do ładunku. Poniższy zrzut ekranu pokazuje pełną konfigurację czynności Send web request (Wyślij żądanie internetowe). Kliknij przycisk Zapisz, aby kontynuować.

Krok 4: Utworzenie czynności „Edit Issue” (Edytuj zgłoszenie)
Na koniec wyszukaj i wybierz czynność Edit Issue (Edytuj zgłoszenie).

Czynność Edit Issue (Edytuj zgłoszenie) wyodrębnia identyfikator incydentu z żądania StatusPage i przechowuje go w polu niestandardowego identyfikatora incydentu. Identyfikator incydentu jest wyodrębniany przy użyciu wartości inteligentnych. Poniższy zrzut ekranu pokazuje, jak skonfigurować ten komponent czynności Edit Issue (Edytuj zgłoszenie).

Poniższy zrzut ekranu pokazuje końcowe podsumowanie tej reguły.

Reguła jest teraz gotowa do włączenia. Wprowadź nazwę reguły i kliknij przycisk Turn it on (Włącz). Dane z tej reguły zostaną użyte do utworzenia poniższych reguł.
Zaktualizuj StatusPage po skomentowaniu zgłoszenia
Ta kolejna reguła jest uruchamiana po pozostawieniu komentarza do typu zgłoszenia „Incydent”. Żądanie internetowe jest wysyłane do aplikacji StatusPage, która aktualizuje odpowiedni incydent o treść komentarza. Na poniższym rysunku przedstawiono podsumowanie komponentów dla tej reguły.

Ważnym komponentem, który należy przejrzeć w tej regule, jest czynność Send web request (Wyślij żądanie internetowe). Ta czynność jest kopiowana z poprzedniej reguły, ale z pewnymi zmianami.
Adres URL elementu webhook został dołączony do ciągu /{{issue.incident_id}}. Wartości inteligentne służą do pobierania pola niestandardowego identyfikatora incydentu ze zgłoszenia i przekazania go do Statuspage jako obiekt docelowy żądania internetowego.
Metoda HTTP jest teraz ustawiona na PATCH zamiast POST. Powoduje to, że aplikacja StatusPage aktualizuje istniejący incydent zamiast tworzyć nowy.
Pole danych niestandardowych zostaje zmienione tak, aby zawierało kod, który używa wartości inteligentnych, aby wyodrębnić treść komentarza ze zgłoszenia i umieścić go w treści incydentu.


Zamknij incydent StatusPage, gdy status zgłoszenia zmieni się na gotowy
Ta ostatnia reguła łączy je ze sobą. Informuje ona aplikację StatusPage, że incydent został rozwiązany, gdy status odpowiedniego zgłoszenia Jira zostanie zmieniony na Done (Gotowe). Na poniższym obrazie przedstawiono podsumowanie reguły.

Komponent żądania internetowego został ponownie skopiowany z poprzednich reguł i zmodyfikowany.

Pole danych niestandardowych zostało zmodyfikowane, aby ustawić status zdarzenia na „Resolved” (Rozwiązane). Jest to jedyna modyfikacja poprzedniej reguły komentarza.
Reguły są teraz gotowe do użycia. Można je przetestować, tworząc zgłoszenia typu incydent i wykonując interakcje wyzwalające. Zachowanie reguł można monitorować w dzienniku audytu automatyzacji, który umożliwia rejestrowanie i odczytywanie informacji o zachowaniu reguł. Reguły automatyzacji przedstawione w tym przewodniku są świetnymi przykładami zaawansowanych reguł użycia interfejsu API żądań internetowych.
Sprawdź setki innych przykładów w naszej bibliotece szablonów automatyzacji.