Comparar logs: alinhe e compare vários arquivos por timestamp
Abra vários arquivos de log lado a lado, role-os em sincronia pelo timestamp e filtre as linhas que importam.
Um visualizador de logs em tela cheia para depurar sistemas distribuídos: adicione logs de serviços diferentes e veja o que aconteceu em todos eles no mesmo momento.
Comparar logs: alinhe e compare vários arquivos por timestamp
Abra vários arquivos de log lado a lado, role-os em sincronia pelo timestamp e filtre as linhas que importam.
O visualizador funciona como um app próprio em tela cheia para que cada pixel seja dedicado aos seus logs.
Abrir Comparar logs (tela cheia)Os arquivos são analisados inteiramente no navegador; nada é enviado.
- Rolagem alinhada por timestamp: todos os logs abertos se movem juntos para o mesmo instante.
- Vários arquivos lado a lado: compare um log de cliente com um de servidor e um de proxy.
- Filtros de palavra-chave e regex por arquivo reduzem o ruído às linhas relevantes.
- Destaque e fixe linhas para marcar as evidências enquanto você percorre uma linha do tempo.
- Lida com arquivos grandes analisando localmente no navegador: sem envio e sem cotas de tamanho do servidor.
- Gratuito e de código aberto (github.com/lubobill1990/log-compare).
Por que comparar logs alinhados por timestamp
Quando uma solicitação passa por três serviços e algo dá errado, a verdade fica espalhada em três arquivos de log. Lê-los um de cada vez obriga você a guardar timestamps na cabeça, alternar entre editores e perder o contexto a cada troca. Log Compare segue a abordagem oposta: abra todos os arquivos relevantes de uma vez, e o visualizador os alinha em uma linha do tempo compartilhada; ao rolar um log, os demais rolam para o mesmo instante.
A interação principal é a rolagem bloqueada por timestamp. Cada arquivo é analisado no navegador e o timestamp de cada linha é indexado. Conforme você avança pelo log principal, os outros painéis acompanham até a linha mais próxima naquele momento ou antes dele — a mesma técnica que engenheiros aplicam manualmente com dois monitores e muita paciência, feita automaticamente. A diferença de relógio entre máquinas permanece visível em vez de escondida, o que por si só é diagnóstico: se o log do banco de dados afirma que um evento ocorreu antes da solicitação que o causou, você aprendeu algo importante sobre sua configuração de NTP.
Os filtros tornam o alinhamento útil em escala. Um serviço verboso pode emitir milhares de linhas por segundo; um filtro de palavra-chave ou expressão regular por arquivo reduz cada painel às linhas de interesse — código de erro, ID de solicitação, ID de usuário — enquanto o alinhamento continua funcionando com a linha do tempo completa. Combinar um filtro de ID de solicitação em todos os painéis transforma um rastreamento distribuído em algo que você pode ler de cima a baixo.
Tudo acontece localmente. Os arquivos são lidos com a File API do navegador e nunca saem da sua máquina, algo importante quando logs contêm dados de clientes, tokens ou nomes de host internos que não devem ser colados em uma ferramenta on-line qualquer. Isso também significa que o limite prático é sua RAM, não um limite de envio.
Usos típicos: postmortems em que você reconstrói um minuto de caos a partir de cinco serviços; comparar o log de um ambiente com falha ao de um saudável para identificar onde o comportamento diverge; seguir um ID de solicitação entre cliente, gateway e backend; e verificar se uma correção mudou a sequência de eventos, e não apenas a mensagem de erro. O visualizador é de código aberto, então as regras de análise podem ser estendidas para formatos de timestamp personalizados.
Exemplos de uso do Comparar logs
Formas práticas de engenheiros usarem logs alinhados por timestamp.
| Cenário | Como o Comparar logs ajuda | Resultado |
|---|---|---|
| Solicitação de API falha de forma intermitente entre gateway e backend | Abra os dois logs, filtre pelo ID da solicitação e role até o erro do gateway | O painel do backend já está no mesmo momento: um timeout do pool de conexões 40 ms antes. |
| Postmortem de uma indisponibilidade de 3 minutos em 4 serviços | Abra os quatro logs e percorra a janela da indisponibilidade em sincronia | A ordem dos eventos entre serviços fica clara, incluindo qual alarme foi causa e qual foi efeito. |
| Staging funciona, produção falha | Abra lado a lado o log da mesma operação em cada ambiente | Os painéis divergem na linha exata em que produção segue outro caminho de código. |
| Suspeita de diferença de relógio entre hosts | Alinhe em um evento compartilhado conhecido (marcador de deploy, tick do cron) | A diferença aparece como um deslocamento constante entre painéis; quantifique-a antes de confiar na linha do tempo. |
Como usar o Comparar logs
- Clique em Abrir Comparar logs: o visualizador abre em uma página de tela cheia.
- Arraste e solte dois ou mais arquivos de log, ou use o seletor de arquivos; cada um abre em seu próprio painel.
- Role qualquer painel: os demais acompanham automaticamente o mesmo timestamp.
- Adicione um filtro de palavra-chave ou regex por painel para reduzir o ruído; o alinhamento continua acompanhando a linha do tempo inteira.
- Destaque ou fixe linhas importantes enquanto reconstrói a sequência de eventos.
Perguntas frequentes sobre Comparar logs
Meus arquivos de log são enviados para algum lugar?
Não. Os arquivos são abertos com a File API do navegador e analisados localmente em JavaScript. Nada é transmitido, tornando a ferramenta segura para logs com dados de clientes ou segredos que devem permanecer na sua máquina.
Quais formatos de timestamp são reconhecidos?
Formatos comuns funcionam imediatamente: ISO 8601 (2026-09-11T02:30:00.123Z), datas no estilo syslog e milissegundos de época próximos ao início de uma linha. Linhas sem timestamp reconhecível herdam o horário da linha anterior, mantendo rastreamentos de pilha anexados à entrada de log.
Qual tamanho de arquivo ele consegue lidar?
A análise ocorre na memória, portanto o limite prático é a RAM do navegador; centenas de MB normalmente funcionam bem em um desktop. Para logs de vários GB, filtre antes com grep ou divida por janela de tempo e carregue o trecho necessário.
Posso comparar logs de máquinas com relógios diferentes?
Sim. O alinhamento usa os timestamps de cada arquivo, então uma diferença constante de relógio aparece como um deslocamento visível entre os painéis, em vez de ser corrigida silenciosamente. Alinhe um evento compartilhado conhecido para medir a diferença e leia a linha do tempo considerando esse deslocamento.
É de código aberto?
Sim. Log Compare é desenvolvido em github.com/lubobill1990/log-compare sob uma licença de código aberto; issues e pull requests para novos formatos de timestamp ou recursos são bem-vindos.
Por que ele abre em uma página separada de tela cheia?
A análise de logs precisa de espaço horizontal: vários painéis de linhas longas mais filtros. Por isso, o visualizador funciona fora do layout normal do site, usando a janela inteira. O estado da sessão permanece nessa aba; esta página de destino apenas documenta e o inicia.