Uma pequena ferramenta de linha de comando em Go que colore, filtra e reformata logs logfmt enviados pelo stdin para o terminal.
pamburus/hl
Visualizador de logs via linha de comando que transforma logs JSON e logfmt em uma saída legível, com filtros, ordenação e acompanhamento em tempo real.
- Estrelas
- 3,311
- Forks
- 77
- Issues abertas
- 12
- Último commit
- há 8 horas
O que é?
hl é uma ferramenta de linha de comando para ler logs estruturados. Ela analisa entradas de log em JSON e logfmt e as exibe em um formato legível, com cores, formatos de hora e fusos horários configuráveis, além da opção de ocultar campos. Aceita arquivos simples, vários arquivos de uma vez e entradas compactadas, como gzip, bzip2, xz e zstd.
Além da formatação, hl permite filtrar por nível de log, intervalo de tempo e valores de campos, além de oferecer uma linguagem de consulta com operadores lógicos, expressões regulares e correspondência com curingas. O modo de ordenação cria um índice para organizar cronologicamente grandes conjuntos de arquivos locais, enquanto o modo de acompanhamento combina fluxos em tempo real de várias fontes, em ordem de timestamp.
Quando a saída é direcionada a um terminal, hl usa o pager do sistema (less por padrão) e pode ser configurado por meio de um arquivo de configuração, variáveis de ambiente e temas.
Recursos principais
- 01Converte logs JSON e logfmt em um formato colorido e legível.
- 02Filtra por nível de log, intervalo de timestamps e valores de campos usando uma linguagem de consulta.
- 03Lê arquivos compactados (gzip, bzip2, xz, zstd) diretamente.
- 04Ordena entradas cronologicamente em vários arquivos usando um índice.
- 05Acompanha várias fontes em tempo real e combina as entradas por timestamp.
- 06Oferece temas, formatos de hora e fusos horários configuráveis.
Casos de uso
- Inspecionar logs de aplicações em JSON no terminal durante a depuração.
- Acompanhar logs de vários pods do Kubernetes combinados em uma única linha do tempo.
- Pesquisar em arquivos compactados de logs rotacionados para encontrar erros específicos ou períodos determinados.
Início rápido
- 1
Instalar com Homebrew no macOS
brew install hl - 2
Exibir um arquivo de log (usa less como paginador por padrão)
hl example.log
Antes de usar
- Depende de um paginador externo, como less; não há paginador integrado, e a versão do less para Windows mencionada no README é conhecida por apresentar problemas com as cores ANSI.
Tópicos
Perguntas frequentes
- O que é hl?
- Visualizador de logs via linha de comando que transforma logs JSON e logfmt em uma saída legível, com filtros, ordenação e acompanhamento em tempo real. hl é uma ferramenta de linha de comando para ler logs estruturados. Ela analisa entradas de log em JSON e logfmt e as exibe em um formato legível, com cores, formatos de hora e fusos horários configuráveis, além da opção de ocultar campos. Aceita arquivos simples, vários arquivos de uma vez e entradas compactadas, como gzip, bzip2, xz e zstd.
- hl é gratuito? Qual é a licença?
- hl é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- hl ainda é mantido?
- Manutenção ativa. O último commit de hl foi em 19 de out. de 2026.
- Para que posso usar hl?
- Inspecionar logs de aplicações em JSON no terminal durante a depuração. Acompanhar logs de vários pods do Kubernetes combinados em uma única linha do tempo. Pesquisar em arquivos compactados de logs rotacionados para encontrar erros específicos ou períodos determinados.
- Como instalar hl?
- Instalar com Homebrew no macOS: brew install hl Exibir um arquivo de log (usa less como paginador por padrão): hl example.log
- Onde consigo hl?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/pamburus/hl
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Proxy de CLI que filtra e compacta a saída de comandos do shell antes que ela chegue ao contexto de um agente de programação com IA, reduzindo o uso de tokens.
Um prompt minimalista e personalizável para vários shells, escrito em Rust, que exibe informações relevantes do projeto e do ambiente.
Um comando cd mais inteligente, que aprende quais diretórios você mais usa e permite acessá-los com poucas teclas em todos os principais shells.
Uma ferramenta de terminal que reproduz commits do Git como sessões de digitação animadas, com realce de sintaxe e transições na árvore de arquivos.
Uma interface de terminal que exibe o grafo de commits do Git como imagens, semelhante a git log --graph --all, para navegar pelo histórico do repositório.