Una pequeña herramienta de línea de comandos en Go que colorea, filtra y reformatea logs en formato logfmt recibidos por stdin en la terminal.
pamburus/hl
Un visor de logs para la línea de comandos que convierte logs JSON y logfmt en texto legible, con filtros, ordenación y seguimiento en tiempo real.
- Estrellas
- 3,311
- Forks
- 77
- Issues abiertos
- 12
- Último commit
- hace 8 horas
¿Qué es?
hl es una herramienta de línea de comandos para leer logs estructurados. Analiza entradas JSON y logfmt y las presenta en un formato legible, con colores, formatos de hora y zonas horarias configurables, y la opción de ocultar campos. Acepta archivos sin comprimir, varios archivos a la vez y entradas comprimidas, como gzip, bzip2, xz y zstd.
Además del formato, hl permite filtrar por nivel de log, intervalo de tiempo y valores de campos, y ofrece un lenguaje de consulta con operadores lógicos, expresiones regulares y búsqueda con comodines. El modo de ordenación crea un índice para ordenar cronológicamente grandes conjuntos de archivos locales, mientras que el modo de seguimiento combina flujos en tiempo real de varias fuentes en orden de marca de tiempo.
Cuando la salida se dirige a una terminal, hl usa el paginador del sistema (less de forma predeterminada). También se puede configurar mediante un archivo de configuración, variables de entorno y temas.
Funciones clave
- 01Convierte logs JSON y logfmt en un formato legible con colores.
- 02Filtra por nivel de log, intervalo de marcas de tiempo y valores de campos mediante un lenguaje de consulta.
- 03Lee directamente archivos comprimidos (gzip, bzip2, xz, zstd).
- 04Ordena cronológicamente entradas de varios archivos mediante un índice.
- 05Sigue varias fuentes en tiempo real y las combina según la marca de tiempo.
- 06Admite temas, formatos de hora y zonas horarias configurables.
Casos de uso
- Inspeccionar logs JSON de aplicaciones en una terminal durante la depuración.
- Seguir logs de varios pods de Kubernetes combinados en una sola línea de tiempo.
- Buscar errores específicos o intervalos de tiempo en archivos de logs rotados y comprimidos.
Inicio rápido
- 1
Instalar con Homebrew en macOS
brew install hl - 2
Ver un archivo de registro (usa less como paginador de forma predeterminada)
hl example.log
Antes de usarlo
- Depende de un paginador externo, como less; no incluye un paginador propio y se sabe que la versión de less para Windows mencionada en el README da problemas con los colores ANSI.
Temas
Preguntas frecuentes
- ¿Qué es hl?
- Un visor de logs para la línea de comandos que convierte logs JSON y logfmt en texto legible, con filtros, ordenación y seguimiento en tiempo real. hl es una herramienta de línea de comandos para leer logs estructurados. Analiza entradas JSON y logfmt y las presenta en un formato legible, con colores, formatos de hora y zonas horarias configurables, y la opción de ocultar campos. Acepta archivos sin comprimir, varios archivos a la vez y entradas comprimidas, como gzip, bzip2, xz y zstd.
- ¿hl es gratuito? ¿Qué licencia tiene?
- hl es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿hl sigue mantenido?
- Mantenimiento activo. El último commit de hl fue el 19 oct 2026.
- ¿Para qué puedo usar hl?
- Inspeccionar logs JSON de aplicaciones en una terminal durante la depuración. Seguir logs de varios pods de Kubernetes combinados en una sola línea de tiempo. Buscar errores específicos o intervalos de tiempo en archivos de logs rotados y comprimidos.
- ¿Cómo se instala hl?
- Instalar con Homebrew en macOS: brew install hl Ver un archivo de registro (usa less como paginador de forma predeterminada): hl example.log
- ¿Dónde consigo hl?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/pamburus/hl
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Proxy CLI que filtra y comprime la salida de comandos de shell antes de que llegue al contexto de un agente de programación con IA, reduciendo el uso de tokens.
Un prompt minimalista y personalizable para distintos shells, escrito en Rust, que muestra información relevante del proyecto y del entorno.
Un comando cd más inteligente que aprende cuáles son tus directorios más usados y te permite acceder a ellos con unas pocas teclas, en los principales shells.
Una herramienta de terminal que reproduce commits de Git como sesiones de escritura animadas, con resaltado de sintaxis y transiciones del árbol de archivos.
Una interfaz de terminal que muestra el grafo de commits de Git como imágenes, similar a `git log --graph --all`, para explorar el historial de un repositorio.