Gerenciamento automático de incidentes com Jira e Statuspage
Kev Zettler
Desenvolvedor web full stack, DevOps
Saiba como usar as regras de automação do Jira para fazer a sincronização automática do Statuspage com os itens do Jira.
Tempo
5 minutos de leitura.
Público-alvo:
Você é um usuário experiente do Jira Software e tem uma conta do Statuspage.
Pré-requisitos
Você vai precisar de um projeto ativo do Jira com um tipo de tarefa personalizada de "Incidente" e um campo personalizado "ID do incidente". Comece a usar o Jira aqui.
Você vai precisar de uma conta do Statuspage com acesso à API ativado. Você também vai precisar da chave de API do Statuspage e do Código da página para configurar as seguintes regras de automação. Consulte o guia de API do Statuspage para localizar as chaves de API do Statuspage. Comece a usar o Statuspage aqui.
Etapa 1. Adicionar automação
Clique no botão Adicionar automação e selecione a opção Item.
Pesquise e selecione Item criado.
Clique no botão Salvar para continuar.
Etapa 2. Criar uma nova condição
Em seguida, pesquise e selecione a condição Campos de item.
Use a condição Campos de item para verificar se o tipo de item é um Incidente e agir de acordo. Configure a condição Campos de item para que o campo Tipo de item seja igual a Incidente. Clique em Salvar para continuar.
Etapa 3. Enviar uma solicitação da web
Selecione Enviar solicitação da Web, que vai atualizar o Statuspage.
Para configurar a ação Enviar solicitação da Web, você vai precisar da chave de API do Statuspage e do código da página. Esses valores podem ser encontrados na documentação do Statuspage. Enviar solicitação da Web é uma ação avançada com valores de entrada confidenciais. Mais adiante neste guia, essa ação vai ser reproduzida em regras adicionais com referência a essa configuração.
No campo URL do Webhook, insira o URL do ponto de extremidade de incidentes do Statuspage:
https://api.StatusPage.io/v1/pages/your-page-code/incidents
Substitua o espaço reservado do código de sua página pelo código da página do Statuspage. Na seção de cabeçalhos, insira Authorization:OAuth e a chave de API nos dois campos de cabeçalho.
Defina o Método HTTP como POST e defina o corpo do Webhook como Dados personalizados.
Marque a caixa de seleção Aguardar resposta, pois você vai usar valores da resposta de solicitação da Web em componentes adicionais.
O campo Dados personalizados inclui o código que define uma carga de incidentes para a API Statuspage. Esse código usa valores inteligentes para extrair e adicionar o resumo do item à carga. A captura de tela a seguir exibe a configuração completa da ação Enviar solicitação da Web. Clique em Salvar para continuar.
Etapa 4. Criar ação Editar item
Por fim, pesquise e selecione a ação Editar item.
A ação Editar item extrai o ID do Incidente da solicitação do Statuspage e o armazena em um campo personalizado ID do Incidente. O ID do Incidente é extraído usando valores inteligentes. A captura de tela a seguir demonstra como configurar esse componente Editar item.
A captura de tela a seguir exibe o resumo final dessa regra.
Essa regra agora está pronta para ser ativada. Digite um nome para essa regra e clique no botão Ativar. Os dados dessa regra vão ser usados para criar as regras a seguir.
Atualizar Statuspage quando o item for comentado
A próxima regra é acionada quando um comentário é deixado em um tipo de item “Incidente”. Uma solicitação da Web é feita ao Statuspage que atualiza o incidente correspondente com o conteúdo do comentário. A imagem a seguir exibe o resumo dos componentes dessa regra.
O componente importante a ser analisado nesta regra é a ação Enviar solicitação da Web. Essa ação é copiada da regra anterior, mas com algumas alterações.
O URL do Webhook foi anexado com /{{issue.incident_id}}. Valores inteligentes são usados para enviar pull do campo personalizado ID do Incidente do item e passá-lo ao Statuspage como o destino da solicitação da Web.
O método HTTP agora está definido como PATCH em vez de POST. Essa ação instrui o Statuspage a atualizar um incidente existente em vez de criar um novo.
O campo de dados personalizados é alterado para incluir o código que usa valores inteligentes para extrair o corpo do comentário do item e colocá-lo no corpo do conteúdo do incidente.
Fechar incidente do Statuspage quando o item mudar para concluído
Esta última regra une todas elas. Essa regra informa ao Statuspage que um incidente foi resolvido quando o item correspondente do Jira muda para Concluído. A imagem a seguir exibe o resumo da regra.
O componente de solicitação da Web foi copiado e modificado de novo a partir das regras anteriores.
O campo de dados personalizados foi modificado para definir o status do incidente como “Resolvido”. Essa é a única modificação da regra de comentários anterior.
Essas regras agora estão prontas para uso. Elas podem ser testadas por você com a criação de itens do tipo Incidente e a execução de interações com acionadores. Você pode monitorar o comportamento das regras no Log de auditoria de automação, que oferece registro em log e informações sobre o comportamento das regras. As regras de automação demonstradas neste guia são ótimos exemplos de regras avançadas de uso da API de solicitação da Web.
Consulte centenas de outros exemplos na Biblioteca de templates de automação.
Compartilhe este artigo
Próximo tópico
Leitura recomendada
Marque esses recursos para aprender sobre os tipos de equipes de DevOps ou para obter atualizações contínuas sobre DevOps na Atlassian.