Sobes.tech
Junior

Fale-me sobre a sua experiência com visualização de logs.

sobes.tech IA

Resposta da IA

A visualização de logs é uma parte integrante do trabalho diário.

Utilizo os logs para:

  • Procurar e analisar as causas de defeitos.
  • Depurar testes automáticos.
  • Monitorizar o estado do sistema em ambientes de teste.
  • Confirmar o funcionamento correto das funcionalidades através de registos nos logs.

Trabalhei com diferentes sistemas de logging:

  • Consola do navegador (Developer Tools) — para frontend. Permite rastrear erros de JavaScript, pedidos de rede e mensagens console.log.
  • Sistema de ficheiros dos servidores — acesso via SSH para ver logs em ficheiros de texto. Uso comandos tail, grep, less.
    tail -f /var/log/myapp/application.log | grep "ERROR"
    
  • Sistemas centralizados de logging (ELK Stack, Splunk). Estes sistemas facilitam a pesquisa, filtragem e análise de logs de diferentes fontes. No ELK Stack trabalhei com:
    • Elasticsearch — para procurar dados.
    • Logstash — para recolher e processar logs.
    • Kibana — para visualização e análise, criação de dashboards.

Principais abordagens para trabalhar com logs:

  1. Filtragem: Pesquisa por palavras-chave (ERROR, WARN, INFO, ID de utilizador específico, ID de requisição), intervalos de tempo, tipos de mensagens.
  2. Correlação: Ligação de registos de logs de diferentes serviços ou componentes do sistema por um identificador comum de requisição (Trace ID, Correlation ID).
  3. Análise de stacktraces: Estudo da sequência de chamadas de funções para identificar o local onde ocorreu o erro.
  4. Monitorização de métricas a partir dos logs: Extração de dados para criar gráficos e alertas (por exemplo, número de erros por minuto).

A experiência com logs é crucial para determinar rapidamente a raiz do problema e comunicar eficazmente com os desenvolvedores, fornecendo-lhes informações precisas (hora do erro, contexto, mensagens de log relevantes).