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.
tstack/lnav
Visor de archivos de registro para terminal que combina, sigue y permite buscar en varios archivos con SQL y expresiones regulares.
Alternativa open source a:Splunk
- Estrellas
- 10,754
- Forks
- 414
- Issues abiertos
- 297
- Último commit
- hace 4 días
¿Qué es?
lnav es un visor de archivos de registro que se ejecuta en la terminal. Al recibir archivos o directorios, los descomprime cuando es necesario, detecta su formato y combina las entradas de varios archivos en una vista ordenada por fecha y hora. Sigue los archivos a medida que crecen, gestiona los cambios de nombre y detecta los archivos nuevos que aparecen en los directorios supervisados.
En su interfaz interactiva, lnav permite saltar entre errores y advertencias, buscar y filtrar con expresiones regulares o expresiones de SQLite, y resaltar patrones. Las líneas estructuradas, como JSON-lines, se pueden mostrar con formato, y un histograma muestra el volumen de mensajes a lo largo del tiempo. También permite consultar los mensajes de registro con SQLite directamente desde el visor.
Es una alternativa práctica a combinar tail, grep y less cuando necesitas trabajar con varios registros a la vez. Está disponible como binario estático para Linux, macOS y Windows, y también a través de Homebrew y los paquetes de FreeBSD.
Funciones clave
- 01Combina varios archivos y directorios en una sola vista ordenada por fecha y hora.
- 02Descomprime archivos y detecta automáticamente los formatos de registro.
- 03Sigue el crecimiento y los cambios de nombre de los archivos, y detecta los nuevos que aparecen en los directorios supervisados.
- 04Filtra y busca mediante expresiones regulares o expresiones de SQLite.
- 05Muestra JSON-lines con formato y ofrece un histograma de mensajes a lo largo del tiempo.
- 06Permite ejecutar consultas SQL sobre los mensajes de registro desde el visor.
Casos de uso
- Investigar errores en varios registros de servidor a la vez.
- Leer archivos de registro rotados o comprimidos sin descomprimirlos manualmente.
- Seguir registros en tiempo real y saltar entre advertencias y errores.
- Redirigir la salida de journalctl a una vista que permite navegar por ella.
Inicio rápido
- 1
Instala lnav con Homebrew en macOS
brew install lnav - 2
Instala lnav en FreeBSD
pkg install lnav - 3
O descarga un binario enlazado estáticamente para Linux, macOS o Windows desde la página de versiones
- 4
Indica a lnav tus archivos o directorios de registro
lnav /path/to/file1 /path/to/dir
Antes de usarlo
- Para compilar desde el código fuente se necesitan muchas dependencias, como PCRE2, SQLite, libcurl, libarchive y una cadena de herramientas de Rust.
- La lectura de archivos pcap depende del programa tshark de Wireshark.
Temas
Preguntas frecuentes
- ¿Qué es lnav?
- Visor de archivos de registro para terminal que combina, sigue y permite buscar en varios archivos con SQL y expresiones regulares. lnav es un visor de archivos de registro que se ejecuta en la terminal. Al recibir archivos o directorios, los descomprime cuando es necesario, detecta su formato y combina las entradas de varios archivos en una vista ordenada por fecha y hora. Sigue los archivos a medida que crecen, gestiona los cambios de nombre y detecta los archivos nuevos que aparecen en los directorios supervisados.
- ¿lnav es gratuito? ¿Qué licencia tiene?
- lnav es open source bajo la licencia BSD-2-Clause. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿lnav sigue mantenido?
- Mantenimiento activo. El último commit de lnav fue el 18 oct 2026.
- ¿Para qué puedo usar lnav?
- Investigar errores en varios registros de servidor a la vez. Leer archivos de registro rotados o comprimidos sin descomprimirlos manualmente. Seguir registros en tiempo real y saltar entre advertencias y errores. Redirigir la salida de journalctl a una vista que permite navegar por ella.
- ¿Cómo se instala lnav?
- Instala lnav con Homebrew en macOS: brew install lnav Instala lnav en FreeBSD: pkg install lnav O descarga un binario enlazado estáticamente para Linux, macOS o Windows desde la página de versiones Indica a lnav tus archivos o directorios de registro: lnav /path/to/file1 /path/to/dir
- ¿Dónde consigo lnav?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/tstack/lnav
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un paginador de terminal con muchas funciones para ver texto, con modo de columnas, seguimiento, ejecución y búsqueda incremental.
Una interfaz de terminal en Go para analizar logs en tiempo real, con gráficos dinámicos, desglose por nivel de severidad, filtros regex y análisis opcional con IA.
Interfaz de terminal controlada con el teclado para conectarse a muchas bases de datos SQL y consultarlas, inspirada en lazygit.
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.
Interfaz de terminal para Git escrita en Rust, con operaciones de staging, commits, ramas, stashes y exploración del historial mediante el teclado.