Articoli
Tutorial
Guide interattive
Gestione automatica degli imprevisti con Jira e Statuspage
Kev Zettler
Full Stack Web Developer, DevOps
Scopri come utilizzare le regole di automazione di Jira per sincronizzare automaticamente Statuspage con i ticket Jira.
Ora
5 minuti.
Pubblico
You’re an experienced user of Jira Software and have a Statuspage account.
Prerequisiti
È necessario un progetto Jira attivo con un tipo di task personalizzato "Imprevisto" e un campo personalizzato "ID imprevisto". Inizia a utilizzare Jira qui.
You will need a Statuspage account with API access enabled. You will also need your Statuspage API key and Page Code to configure the following automation rules. Check out the Statuspage API guide to locate your Statuspage API keys. Get started with Statuspage here.
Passaggio 1. Aggiungi l'automazione
Clicca sul pulsante Add automation (Aggiungi automazione) e quindi seleziona l'opzione Issue (Ticket)
Cerca e seleziona Issue Created (Ticket creato).
Clicca sul pulsante Save (Salva) per continuare.
Passaggio 2. Crea una nuova condizione
Cerca e seleziona Issue fields condition (Condizione campi ticket).
Utilizza la Condizione campi ticket per verificare se il tipo di ticket è un Imprevisto e intraprendere l'azione opportuna. Configura Condizione campi ticket in modo che il campo Issue Type (Tipo di ticket) sia equal (uguale) a Incident (Imprevisto). Clicca su Save (Salva) per continuare.
Passaggio 3. Invia una richiesta Web
Seleziona Send web request (Invia richiesta Web), in modo da aggiornare la pagina Statuspage.
Per configurare l'azione Invia richiesta Web sono necessari la chiave API di Statuspage e il codice della pagina. Questi valori sono disponibili nella documentazione di Statuspage. Invia richiesta Web è un'azione avanzata con valori di input sensibili. Più avanti in questa guida, l'azione verrà riprodotta in regole aggiuntive e farà riferimento a questa configurazione.
Nel campo Webhook URL (URL webhook), immetti l'URL dell'endpoint degli imprevisti di Statuspage:
https://api.Statuspage.io/v1/pages/your-page-code/incidents
Sostituisci il segnaposto del codice della tua pagina con il codice della pagina Statuspage. Nella sezione delle intestazioni, inserisci Authorization:OAuth e la tua chiave API nei due campi di intestazione.
Imposta il campo HTTP Method (metodo HTTP) su POST e il campo Webhook body (Corpo webhook) su Custom Data (Dati personalizzati).
Assicurati di selezionare la casella di controllo Wait For Response (Attendi risposta) poiché utilizzerai i valori della risposta alla richiesta Web in componenti aggiuntivi.
Il campo Custom Data (Dati personalizzati) include il codice che definisce un payload dell'imprevisto per l'API di Statuspage. Questo codice utilizza valori intelligenti per estrarre e aggiungere il riepilogo del ticket al payload. Nello screenshot seguente è visualizzata la configurazione completa dell'azione Send web request (Invia richiesta Web). Clicca su Save (Salva) per continuare.
Passaggio 4. Creazione dell'azione Modifica ticket
Infine, cerca e seleziona l'azione Edit Issue (Modifica ticket).
L'azione Modifica ticket estrae l'ID imprevisto dalla richiesta Statuspage e lo memorizza in un campo personalizzato ID imprevisto. L'ID imprevisto viene estratto utilizzando valori intelligenti. La screenshot seguente illustra come configurare questo componente Modifica ticket.
Lo screenshot seguente visualizza il riepilogo finale di questa regola.
La regola ora è pronta per essere abilitata. Immetti un nome per la regola e clicca su pulsante Turn it on (Attiva). I dati di questa regola verranno utilizzati per creare le regole seguenti.
Aggiornamento di Statuspage quando vengono aggiunti commenti a un ticket.
La regola successiva si attiva quando viene lasciato un commento su un tipo di ticket "Imprevisto". Viene inviata una richiesta Web a Statuspage, che aggiorna l'imprevisto corrispondente con il contenuto del commento. L'immagine seguente mostra il riepilogo dei componenti per questa regola.
Il componente importante da rivedere in questa regola è l'azione Invia richiesta Web. Questa azione viene copiata dalla regola precedente ma con alcune modifiche.
Il valore /{{issue.incident_id}} è stato aggiunto all'URL del webhook. I valori intelligenti vengono utilizzati per estrarre il campo personalizzato ID imprevisto dal ticket e passarlo a Statuspage come destinazione della richiesta Web.
Il metodo HTTP è ora impostato su PATCH anziché su POST. Questo indica a Statuspage di aggiornare un imprevisto esistente invece di crearne uno nuovo.
Il campo Dati personalizzati viene modificato per includere codice che utilizza valori intelligenti allo scopo di estrarre il corpo del commento dal ticket e inserirlo nel corpo del contenuto dell'imprevisto.
Chiusura dell'imprevisto Statuspage quando il ticket esegue la transizione allo stato Completato.
Quest'ultima regola le unisce tutte. Indica a Statuspage che un imprevisto è risolto quando il ticket Jira corrispondente viene spostato su Completato. L'immagine seguente mostra il riepilogo della regola.
Il componente della richiesta Web è stato nuovamente copiato e modificato rispetto alle regole precedenti.
Il campo Custom data (Dati personalizzati) è stato modificato per impostare lo stato dell'imprevisto su "Resolved" (Risolto). Questa è l'unica modifica rispetto alla precedente regola di commento.
Queste regole ora sono pronte per l'uso. Puoi testarle creando ticket Tipo imprevisto ed eseguendo interazioni trigger. Puoi monitorare il comportamento delle regole nell'audit log dell'automazione, che fornisce la registrazione e le informazioni sul comportamento delle regole. Le regole di automazione illustrate in questa guida sono ottimi esempi di regole di utilizzo avanzate delle API per le richieste Web.
Dai un'occhiata a centinaia di altri esempi nella nostra Libreria dei modelli di automazione.
Condividi l'articolo
Argomento successivo
Letture consigliate
Aggiungi ai preferiti queste risorse per ricevere informazioni sui tipi di team DevOps e aggiornamenti continui su DevOps in Atlassian.