DEV Community

Cover image for #01 SRE Paper - A Importância da Observabilidade Desde o Início: Não espere até a Produção!
Giselly Silva for TechNerdsUp!

Posted on

#01 SRE Paper - A Importância da Observabilidade Desde o Início: Não espere até a Produção!

Muitos times acreditam que a observabilidade só se torna importante quando o sistema já está em produção, mas isso pode ser um erro crítico. Aplicar observabilidade desde o início pode não parecer tão urgente, mas vai te poupar muito trabalho no futuro – este artigo mostrará como!

A importância da observabilidade desde o início
Assim como a arquitetura de um sistema deve ser pensada desde o começo, é essencial garantir que seja possível entender como o sistema se comporta e como ele será monitorado e suportado.
Observabilidade é a capacidade de entender como o sistema está funcionando e responder perguntas sobre seu comportamento com base em dados - quando aplicada desde o início, é possível preparar as equipes para lidar com problemas inesperados e realizar ajustes de desempenho e escalabilidade antes que afetem o ambiente produtivo.

Por que aplicar observabilidade desde o início?
A observabilidade não só permite monitorar o estado de um sistema, mas também torna mais fácil identificar e resolver problemas antes que eles impactem os usuários. Com ela, a equipe de desenvolvimento consegue:

  • Reduzir o tempo de resolução de problemas: identificando com antecedência falhas ou gargalos de desempenho.
  • Fazer ajustes e melhorias contínuas: testando e otimizando o sistema enquanto ainda está em desenvolvimento.
  • Evitar incidentes críticos: detectando potenciais falhas e sobrecargas antes que atinjam o ambiente de produção.

Observabilidade vs. Monitoramento
Observabilidade e Monitoramento são duas coisas que estão interligadas, mas com propósitos diferentes. Abaixo vamos entender melhor como funcionam:
Image description

  • Monitoramento: é o processo de coletar e analisar métricas e logs predefinidos - são gerados alertas com base em cenários e regras estabelecidas, sendo limitado aos cenários previstos.
  • Observabilidade: vai além do monitoramento, permitindo explorar e investigar sistemas para obter informações novas e facilitar a identificação de problemas não previstos. Ela oferece visibilidade suficiente para diagnosticar e solucionar problemas complexos.

Os três pilares da observabilidade
Também temos 3 pilares que são correlacionados e essencias para a observabilidade, fornecendo assim uma monitoração assertiva. Sendo eles:
Image description

  • Métricas: são dados quantitativos que indicam a saúde e o desempenho do sistema, permitindo detectar padrões de comportamento e problemas antes que se tornem críticos.
  • Traces: fornecem uma visão detalhada do fluxo de execução em sistemas (principalmente em sistemas de microserviços), facilitando a identificação de gargalos e falhas de performance.
  • Logs: são registros que contém o detalhamento dos eventos no sistema, nos permitindo entender o que aconteceu em momentos específicos da execução.

Como começar com observabilidade na prática
Dito tudo isso, como será que podemos iniciar com observabilidade? Aqui vão algumas dicas:

  1. Defina métricas e metas de performance: inicie com métricas essenciais (latência, taxa de erro, throughput, etc.) e estabeleça níveis de SLOs.
  2. Use ferramentas de monitoramento de mercado: ferramentas como Grafana e Prometheus ajudam a monitorar logs e métricas.
  3. Implemente tracing: trace e log chamadas entre serviços para identificar gargalos e falhas, principalmente em chamadas críticas.
  4. Automatize alertas: configure alertas para métricas críticas, isso permitirá uma ação mais rápida, até mesmo antes de impactar os usuários.
  5. Simule cenários de falhas: realize testes de carga e falhas para ajustar a resiliência do sistema em tempo de desenvolvimento.

Por fim
Implementar observabilidade desde o início, logo nas fases de desenvolvimento é essencial para construir sistemas resilientes e confiáveis. Permitindo que a equipe seja capaz de entender e mitigar falhas antes que se tornem críticas.

Dúvidas?
Ainda resta alguma dúvida sobre o conteúdo? Entre em contato comigo nas minhas redes sociais: @gisellykds ou @technerdsupdev .

Top comments (0)