He notado recientemente que a veces tail -f <logfile>
dejará de actualizarse a la pantalla.
Sin embargo, hacer un Ctrl>- Cy reiniciar el trabajo tail
funciona bien. Y verifiqué para asegurarme de que el archivo de registro no se gira a mitad de camino (lo que puede hacer que tail
pierda la cabeza).
¿Qué causaría esto? Estoy ejecutando RHEL 5.2 x64.
Respuestas:
Intente ajustar su comando de cola con
strace
si lo tiene:Luego, solo para patadas recursivas locas, puede ajustar la salida de strace (no importa si eso se rompe porque está saliendo a un archivo):
El mío se ve así:
El -t activa el tiempo y -T activa el tiempo dedicado a las llamadas.
Presione regresar 4 o 5 veces para hacer un poco de espacio vertical, luego espere a que deje de seguir. Esperemos que haya algunas pistas en la salida.
fuente
Intenta usar:
tail --follow=name <logfile>
Y mira si eso funciona mejor. No tiene que preocuparse de que se gire debajo de usted.
¿Algún patrón para que se detenga? Cierto período de tiempo? Cierta hora del día?
fuente
tail
, es solo periódicamente (en algún momento entre 2 y 20 horas) deteniéndose para seguir más ... desearía que hubiera más de un patrón: - \screen
sesión para una depuración extendida, y esto es preocupanteDado que ambos archivos de registro problemáticos están escritos por diferentes componentes de la misma aplicación, me pregunto si no es parte del código de registro de esa aplicación lo que está causando el problema. Propongo dos pruebas para tener una mejor idea de lo que está sucediendo:
Tenga en cuenta el inodo del archivo de registro (
ls -i logfile
) antes de comenzar la cola, y una vez que la cola falla, revísela nuevamente. Si el inodo ha cambiado, entonces el registrador está reescribiendo todo el archivo de registro, lo que rompería la conexión de la cola.Tenga en cuenta la última línea antes de que la cola deje de funcionar, y luego visite el archivo y encuentre la primera entrada de registro después de esa línea. Haga esto 3-5 veces si es posible. Si se trata de un problema con el programa que realiza el registro, la parte del programa que escribió la entrada del registro inmediatamente después de que ve un salto de cola probablemente sea el responsable. Si esa entrada de registro es siempre la misma, o si proviene del mismo componente del programa, es posible que tenga suficientes datos para enviar un informe del problema al proveedor de la aplicación.
Buena suerte.
fuente
Teniendo el mismo problema aquí.
El problema era que el archivo que estoy viendo se montó desde una máquina diferente. La notificación de cambio no se propagó a través del montaje.
La solución fue usar la cola en la máquina original.
fuente