O Que É um Log? Registros de Eventos em Observabilidade Explicados
Um log é um registro com timestamp de um evento discreto que aconteceu em um sistema, escrito para que um humano ou uma máquina possa reconstruir o que ocorreu depois.
Logs são o sinal de observabilidade mais antigo e mais intuitivo: uma narrativa corrente do que um programa fez. Onde metrics agregam e traces seguem uma requisição, logs capturam momentos individuais em detalhe completo. Esse detalhe os torna inestimáveis para investigação e caros de armazenar em escala.
O que uma entrada de log contém
Uma linha de log tipicamente carrega um timestamp, um nível de severidade como info, warn ou error, e uma mensagem, muitas vezes com campos extras dando contexto como um request ID ou nome de componente. Juntas, uma sequência de linhas de log conta a história do que um sistema estava fazendo em um dado momento.
Níveis de severidade
Níveis permitem filtrar sinal de ruído. Debug e info descrevem operação normal; warn sinaliza algo suspeito; error e fatal marcam problemas reais. Definir o nível certo por ambiente, verboso em desenvolvimento, mais quieto em produção, mantém os logs úteis sem afogar o armazenamento.
Logs estruturados vs não estruturados
Um log não estruturado é texto de forma livre, fácil de escrever mas difícil de consultar. Um log estruturado é emitido como dados chave-valor, tipicamente JSON, para que os campos possam ser filtrados e agregados por máquinas. O logging estruturado é o padrão moderno precisamente porque transforma logs em algo que você pode pesquisar e analisar, não apenas ler.
Logs no CI/CD
Build logs são a primeira coisa que qualquer um lê quando um job falha, e são a forma mais bruta de observabilidade de pipeline. Quando os passos de CI emitem logs estruturados e você os envia para um armazenamento central, você pode pesquisar entre execuções, contar padrões de erro e detectar uma falha que se repete em muitos builds em vez de reler um job de cada vez.
Custo e retenção
Logs são detalhados, o que os torna volumosos e caros de manter. As equipes gerenciam isso com sampling, com retenção mais curta para logs de baixo valor, e promovendo campos consultados com frequência para metrics. O objetivo é manter detalhe suficiente para investigar sem pagar para armazenar tudo para sempre.
Principais conclusões
- Um log é um registro com timestamp e detalhado de um único evento.
- Níveis de severidade separam atividade rotineira de problemas reais.
- Logs estruturados são consultáveis; logs não estruturados são apenas texto.
- Build logs são a forma mais bruta de observabilidade de pipeline.