GNU/Linux >> Tutoriales Linux >  >> Linux

3 formas de ver registros en tiempo real en Linux

Sabes cómo ver archivos en Linux. Usas el comando cat o probablemente menos comando para este propósito.

Eso es bueno para los archivos que tienen contenido estático. Pero los archivos de registro son dinámicos y su contenido cambia con el tiempo. Para monitorear los registros, debe observar el archivo de registro a medida que cambia su contenido.

¿Cómo ve el contenido de los archivos de registro en tiempo real? Tail es el comando más popular para este propósito, pero también hay otras herramientas. Te los mostraré en este tutorial.

Método 1:Ver archivos de registro con el comando tail

El comando tail es tan popular para ver archivos de registro en la vida real que los administradores de sistemas usan el término 'tail the log file'.

El comando tail se usa esencialmente para mostrar las líneas de un archivo desde el final y, por lo tanto, el término 'tail'.

Puedes usar el -f opción para seguir la cola de un archivo, lo que significa que seguirá mostrando las nuevas líneas agregadas al archivo continuamente.

tail -f location_of_log_file

Para detener el seguimiento del archivo de registro, use Ctrl+C atajo de terminal.

Cola y grep

¡Bien! Entonces, el comando tail resuelve un problema al mostrar los cambios del archivo en la vida real. Pero ver el archivo de registro continuamente cuando hay tantos cambios rápidos en tiempo real no es muy útil.

A menudo buscará un término en particular al monitorear el archivo de registro. Encontrar eso en la avalancha de nuevas líneas entrantes es casi imposible.

Para facilitar las cosas, combine el comando tail y grep de esta manera:

tail -f log_file | grep search_term

Esto es bueno, ¿verdad? Hagámoslo un poco mejor.

A menudo me he dado cuenta de que solo las líneas con los términos buscados no revelan los detalles necesarios. Es por eso que uso el comando grep para mostrar algunas líneas antes y después del término buscado con la opción -C .

tail -f log_file | grep -C 3 search_term

Ahora, verá las líneas que coinciden con el término de búsqueda junto con 3 líneas antes y después. Esto le dará una mejor perspectiva de lo que está sucediendo.

¿Quieres hacerlo aún mejor? Puede hacer grep en varios términos de búsqueda e incluso convertirlo en una búsqueda que no distinga entre mayúsculas y minúsculas:

tail -f log_file | grep -C 3 -i - E 'search_term_1|search_term_2'

Seguir el archivo con rotación de registro

Si está trabajando en un servidor empresarial, es probable que los registros estén rotados. Esto significa que después de que el archivo de registro actual alcanza un cierto tamaño, se le cambia el nombre y se comprime.

Eso crea un problema si está rastreando un archivo de registro en tiempo real. De forma predeterminada, el comando tail funciona en el descriptor de archivo. Si se rota el archivo de registro actual, el comando de cola apuntará ahora a un archivo de registro archivado que no registrará ningún cambio ahora.

La solución es seguir un archivo de registro por su nombre. De esta manera, incluso cuando se lleve a cabo la rotación del registro, la cola apuntará al archivo de registro actual (porque su nombre nunca cambia).

tail --follow=name log_file | grep -C 3 -i - E 'search_term_1|search_term_2'

Esto es mucho mejor ahora. La próxima vez que siga un archivo de registro, utilícelo de esta manera para monitorearlo de manera más efectiva.

Tail es bueno para monitorear un archivo de registro en tiempo real, pero ¿qué sucede si tiene que analizar más de un archivo de registro al mismo tiempo? La respuesta se encuentra en la siguiente sección.

Observar múltiples archivos de registro con cola

Esto debería funcionar en sistemas Linux. Puede monitorear varios archivos de registro al mismo tiempo con el comando tail. Simplemente proporcione la ruta del archivo de esta manera:

tail -f log_file_1 -f log_file_2

Verá que comienza a mostrar los cambios en tiempo real junto con el nombre del archivo anterior para que pueda distinguir entre las diferentes fuentes de registro.

Hay una forma un poco mejor de ver varios archivos de registro a la vez usando una utilidad llamada multitail.

Método 2:Supervise varios archivos de registro a la vez con multitail

Multitail, como sugiere el nombre, se utiliza para mostrar varios archivos a la vez.

¿Cual es el problema? El comando de cola también puede hacer lo mismo, ¿verdad?

Pero Multitail tiene alguna ventaja sobre el comando de cola convencional. Muestra los archivos en vistas divididas e incluso puede mostrar diferentes archivos en diferentes filas y columnas.

Recuerde, la cola muestra todo en la misma vista y eso se vuelve difícil de seguir. Multitail supera esta dificultad al proporcionar una vista dividida como el comando de pantalla.

Multitail no es un comando esencial como tail y es posible que deba instalarlo antes de usarlo.

Puede proporcionarle varios archivos, pero creo que sería difícil seguir más de 3 archivos a la vez.

multitail log_file_1 log_file_2

Por defecto, multitail funciona igual que tail -f . Muestra las últimas 100 líneas y luego pasa a la vista en tiempo real. Por defecto, divide la vista en filas.

Puede presionar b para abrir una ventana de selección y seleccionar el archivo de registro de su elección para verlo y desplazarse por él para un análisis más profundo.

Presiona q para salir desde todo tipo de vistas en multitail.

Puede dividir las vistas en columnas como esta:

multitail -s 2 log_file_1 log_file_2

Hay un espacio obligatorio entre -s y el número de columnas.

Multitail es capaz de hacer otras cosas, pero no entraré en esos detalles en este tutorial.

Hasta ahora, ha visto dos formas de monitorear archivos de registro. Hay otra forma menos convencional de ver los cambios de archivos en la vida real y es usando el comando less

Método 3:Ver cambios en el archivo de registro en tiempo real con menos comando

El comando menos es más para leer archivos de texto sin saturar la pantalla. También se puede usar para leer archivos con cambios en tiempo real.

La opción +F permite a less seguir los cambios realizados en un archivo de texto.

less +F log_file

Abre los archivos de registro y los cambios que se escriben se muestran en tiempo real.

Presione Ctrl+c para interrumpir y q para salir de la vista.

Este método le permite tener una vista rápida de los cambios de registro sin saturar la pantalla, a diferencia del comando tail.

Conclusión

Este método de monitoreo de archivos de registro en Linux funciona para los archivos de registro tradicionales basados ​​en texto. Para los registros del sistema, los syslogs todavía están allí, pero muchas distribuciones de Linux han cambiado a registros diarios y para ver y analizar los registros diarios, debe usar los comandos journalctl.

Aparte de eso, existen otras herramientas sofisticadas como Graylog para el análisis de registros en un nivel más profundo con paneles y gráficos. Más sobre eso en algún otro artículo.

Espero que haya aprendido un par de cosas nuevas de este tema aparentemente fácil sobre el monitoreo de registros en tiempo real en Linux. Tus comentarios son bienvenidos.


Linux
  1. Comandos de acceso a archivos en Linux:buscar, ordenar, encabezado, cola

  2. Análisis de audio en tiempo real en Linux

  3. Vea el sistema de archivos en tiempo real en OS X y Ubuntu

  4. ¿Cómo utiliza Linux un reloj de tiempo real?

  5. Visualización de registros en un servidor Linux remoto

Cómo verificar los registros del sistema en Linux [Guía de uso completa]

¿Qué son los registros de Linux y dónde encontrarlos?

7 formas de usar el comando Watch de Linux

GoAccess:un analizador de registros de Apache y Nginx en tiempo real

15 formas de utilizar el comando Watch de Linux para las actividades cotidianas

Supervise el uso del ancho de banda de la red de Linux en tiempo real con nload