Integrando o GitHub ao Sentry para aumentar a velocidade de resolução
8 de agosto de 2022 // 4 min read
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:
- Faça login na sua conta do Sentry
- Conecte seus repositórios do GitHub ao Sentry para começar a rastrear dados de commit
- Importe seu arquivo GitHub CODEOWNERS para mapear automaticamente problemas para as equipes ou pessoas no Sentry
- Instale o Sentry Release GitHub Actions no GitHub para carregar automaticamente sourcemaps, gerenciar versões no Sentry e acompanhar o sucesso da versão
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.
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.
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.
A partir daqui, você pode criar um problema no GitHub diretamente do Sentry e marcar o responsável sugerido a um problema.
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.
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).
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