Uma das actividades mais importantes, depois de fazer o deploy de uma aplicação web para o ambiente de produção, é monitorar os logs do sistema. É através dos logs que veremos se existem bugs no sistema que impedem o seu funcionamento ou atrapalham algumas acções dos usuários. Uma das formas de verificar estes logs é aceder ao servidor e analisar os ficheiros de logs, sempre que um usuário reportar algum erro, mas, convenhamos, usuários não reportam erros. Se um usuário encontrar um erro no seu sistema, existe 90% de probabilidade dele abandonar o mesmo e ir para o sistema da concorrência. Por isso, é necessário e fundamental que estejamos sempre um passo a frente do usuário na monitoria e correcção de erros dos nossos sistemas.
Ferramentas de análises de Logs
Nos últimos tempos, testei várias ferramentas de análise e gestão de logs em PHP. Passei de Loggly para Rollbar e agora finalmente decidi usar Sentry como a ferramenta ideal para a gestão de logs, e neste artigo pretendo explicar os motivos que me levaram a escolha do Sentry. Note que todas estas ferramentas funcionam para qualquer plataforma(linguagem de programação) e não somente PHP.
Sentry é open-source e Self-hosted
O principal motivo para o uso do Sentry foi a possibilidade de instalar a ferramenta nos meus próprios servidores, o que reduz o custo da minha infra-estrutura online no geral. Tanto o Rollbar quanto o Loggly possuem um plano gratuito, mas o limite mensal de 10 mil mensagens não eram suficientes para que eu pudesse usar em pleno. O Sentry também oferece uma opção SaaS, mas porque eu não queria pagar nenhuma mensalidade, optei pela opção open source e instalei nos meus próprios servidores na AWS. Assim, posso ter quantos projectos e organizações quiser na minha própria instância.
Sentry apresenta o contexto do erro
Para além da mensagem do erro ou log, o Sentry também apresenta todo o contexto daquele erro, incluindo o ambiente do utilizador e as variáveis do sistema. Assim, torna-se fácil reproduzir o erro no seu ambiente de desenvolvimento, sem ter que consultar ao utilizador sobre as circunstancias do erro.
Integração fácil com várias plataformas
O Sentry já possui SDK para integração com vários Frameworks e linguagens de programação, incluindo Javascript para monitorar erros de Frontend. No meu caso, integração com PHP, CakePHP e Laravel foi suficiente para a minha decisão, apesar de também estar a usar a SDK para Java e Python em outros projectos.
Notificações… em todos lugares possíveis!
Para além de um dashboard muito bem organizado, o Sentry também envia notificações sempre que um erro ocorre no sistema. As notificações são enviadas por email, Slack, Whatsapp, SMS e todas as outras formas que o usuário desejar, basta para tal activar o plugin necessário.
Como usar o Sentry nos meus projectos?
Se pretende usar ou apenas testar o Sentry, basta aceder a documentação do Sentry para ver como integrar com as suas ferramentas de desenvolvimento e deployment. Em caso de alguma dúvida, basta comentar neste post que, quem sabe, poderei ajudar!
Comentários Recentes