Integrando o GitHub ao Sentry para aumentar a velocidade de resolução

8 de agosto de 2022 // 4 min read

image

Se você já está usando o Sentry e o GitHub separadamente ou criando um fluxo de trabalho de implantação pela primeira vez, poderá seguir estas etapas para criar um fluxo de trabalho automatizado para a sua equipe

Por: Angela Jiang, Gerente de marketing de produto, @Sentry

Sentry é uma plataforma de monitoramento de aplicações que ajuda mais de 3,5 milhões de desenvolvedores a ver o que realmente importa, resolver mais rapidamente e aprender continuamente sobre as aplicações, do front-end ao back-end.

Toolchains são complicadas. Desenvolvedores e gerentes de engenharia estão trabalhando com mais ferramentas do que gostariam. Para manter a eficiência no mundo de hoje, as integrações inteligentes estão deixando de ser um benefício e se tornando uma necessidade.

Na Sentry, nosso foco é melhorar o fluxo de trabalho do desenvolvedor. Isso significa, em parte, criar integrações mais completas com ferramentas como o Github para que os desenvolvedores monitorem cada fase dos ciclos de lançamento com mais facilidade, fornecendo um fluxo de trabalho de implantação mais automatizado que detecta erros com a mesma rapidez em que o código é enviado para produção (sem cliques desnecessários em botões).

Se você já está usando o Sentry e o GitHub separadamente ou criando um fluxo de trabalho de implantação pela primeira vez, poderá seguir estas etapas para criar um fluxo de trabalho automatizado para a sua equipe:

Clientes como a Forethought, que têm equipes de engenharia cada vez maiores e enviam continuamente, costumam operar com visibilidade limitada do código que enviam e da propriedade sobre quem deve corrigir o que após o lançamento. No caso da Forethought, integrar o arquivo GitHub CODEOWNERS ao Sentry permitiu que dividissem e atribuíssem responsabilidades a equipes específicas, reduzindo o tempo de resolução em até 94%.

Além de melhorar a propriedade do problema, a integração do GitHub com o Sentry permite que clientes como a Forethought:

  • Monitorem automaticamente a integridade de uma nova versão e seus impactos nos usuários com o Sentry Release GitHub Actions.
  • Criem ou vinculem problemas do GitHub diretamente no Sentry.
  • Prevejam qual commit causou um problema e o provável responsável por resolvê-lo.
  • Vinculem rastreamentos de stack do Sentry de volta ao código-fonte do GitHub para ver a linha de código que está causando o erro.
  • Resolvam problemas por meio de pull request ou commit.

Vejamos um exemplo de como os clientes normalmente usam o Sentry e o GitHub juntos e como você pode ver o que foi dito acima em ação.

Depois que uma versão é implantada, você acessa a guia Release Health no Sentry para monitorar a estabilidade, a adoção de usuários e os problemas em uma versão a fim de identificar e interromper a distribuição de uma versão incorreta antes que ela afete os clientes. Na guia Release Health, veja detalhes do histórico de commit e estatísticas importantes, como a adoção de usuários, o uso de aplicações e as taxas de falhas. Você também pode visualizar problemas novos, não tratados, regredidos e problemas de desempenho relacionados em cada versão.

Captura de tela do Sentry

Com o Sentry Release GitHub Actions instalado, cada nova versão (principal ou secundária) é registrada automaticamente e os commits suspeitos são configurados automaticamente. O Sentry também carrega o código-fonte original e não transformado (também conhecido como sourcemaps), que desminifica qualquer código Javascript presente. Você pode ver quando uma versão não está fazendo sucesso observando as principais métricas, como a adoção de usuários e a taxa de sessões sem falhas.

Imagem do Sentry 1

Com o arquivo GitHub CODEOWNERS sincronizado às regras de proprietário do código do Sentry, o Sentry não apenas captura o problema que afeta os usuários, como também revela o commit específico relacionado ao problema e sugere automaticamente o membro certo da equipe para triá-lo. Dessa forma, você não precisa mais se esforçar para descobrir quem é responsável pelo que quando ocorrem interrupções críticas.

Imagem do Sentry 2

A partir daqui, você pode criar um problema no GitHub diretamente do Sentry e marcar o responsável sugerido a um problema.

Captura de tela do Sentry

Ao clicar no relatório de erros do Sentry, o desenvolvedor atribuído ao problema pode ver o rastreamento do stack e navegar facilmente para o arquivo relevante do GitHub que está solidamente vinculado no rastreamento do stack para investigar o problema mais detalhadamente.

Captura de tela do Sentry

Por fim, o desenvolvedor responsável pelo problema pode identificá-lo rapidamente, corrigi-lo e abrir uma pull request com a ID de problemas do Sentry incluída nos comentários. (O Sentry anota automaticamente o problema correspondente com uma referência ao commit ou à pull request e, posteriormente, quando o commit ou a pull request fizerem parte de uma versão, marca o problema como resolvido).

Imagem do Sentry 3

Ao integrar o GitHub ao Sentry, você aproveita todo o potencial de ambas as ferramentas para simplificar o fluxo de trabalho da sua equipe, aumentar a velocidade de resolução e aprender com as tendências para otimizar a integridade do código ao longo do tempo.

À medida que nos esforçamos para melhorar a forma como os desenvolvedores enviam e aprimoram os softwares, adoraríamos ouvir sua opinião: qual parte do fluxo de trabalho funciona bem, qual é totalmente horrível e em que podemos melhorar?

Acabou de chegar ao Sentry e quer experimentá-lo gratuitamente? Cadastre-se ou experimente a versão mais recente do Actions aqui.

Tags

Quer saber como o GitHub pode ajudar sua empresa?

Fale mais sobre suas necessidades

octocaptcha spinner