Observar múltiples archivos de registro en una salida


60

¿Hay una manera fácil de hacer algo como tail -f mylogfilemostrar los cambios de más de un archivo (quizás con el nombre del archivo agregado como prefijo a cada línea)? O tal vez una herramienta GUI? Estoy ejecutando Debian.



Gracias por el consejo. Esta es una herramienta realmente útil. También puede truncar archivos, borrar la pantalla con un acceso directo, etc.
stofl

Respuestas:


92

Has intentado tail -f file1 file2? Parece hacer exactamente lo que quieres, al menos en mi máquina FreeBSD. ¿Quizás lo tailque viene con un sistema Debian puede hacerlo también?


2
Si. ¡Funciona! Gracias. Nunca había esperado que fuera TAN fácil.
stofl

11
Por lo general, uso -Fen su lugar ya que una serie de archivos pueden truncarse cuando reinicio los programas del servidor.
Arcege

10
Mi nuevo combo de parámetros favoritos es tail -qF *.log: -qocultar los nombres de archivo y -F, como señaló Arcege, dejar que tailsiga el nombre en lugar del descriptor porque mis archivos de registro se están rotando.
Denis Drescher el

Validado también en Ubuntu 16.04 LTS
Ricardo

Hay un límite para esto. Tengo una carpeta con archivos de registro por PID para un trabajador que se inicia para cada nuevo trabajo en una cola (muchos PID). Si me tail -f /var/log/folder/*devuelve el error "no se puede ejecutar / usr / bin / tail: lista de argumentos demasiado larga"
flickerfly

3

Por alguna razón, las respuestas en la línea de tail -f file1 file2no eran exactamente lo que tenía en mente.

Quiero saber qué sucedió en varios registros, más recientemente 'localmente', independientemente del orden cronológico global.

Para hacer eso, usé algo más como watch -n1 tail -n10 file1 file2


1

Para el ejercicio escribí una pequeña utilidad de nodo que hace lo mismo que tail -f f1 f2 f3

Esplendor:

https://www.npmjs.com/package/splex

La "actualización" principal es que las líneas están codificadas por colores por nombre de archivo, y que puede tener una interfaz similar a una tabla.

Otra mejora, en realidad la razón principal por la que escribí esto, es la capacidad de tener archivos .splexrc.json en diferentes carpetas, por lo que en lugar de tener que escribir tail -f f1 f2 f3en una carpeta, luego diferentes archivos en otra, puede escribir el archivo .splexrc.json en la raíz de su proyecto y simplemente escriba splexsin argumentos de la lista de archivos y transmite automáticamente los registros relevantes que enumeró en el archivo de configuración.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.