J'ai remarqué récemment que la tail -f <logfile>
mise à jour de l'écran s'arrête parfois .
Faire un Ctrl>- Cet redémarrer les tail
travaux bien, cependant. Et j'ai vérifié que le fichier journal n'est pas tourné en cours de route (ce qui peut faire tail
perdre la raison).
Qu'est-ce qui provoquerait cela? J'utilise RHEL 5.2 x64.
Réponses:
Essayez d'envelopper votre commande tail avec
strace
si vous l'avez:Ensuite, juste pour les coups de pied récursifs fous, vous pouvez suivre la sortie de strace (peu importe si cela se casse parce qu'il sort dans un fichier):
Le mien ressemble à:
-T active le temps et -T active le temps passé dans les appels.
Appuyez sur le retour 4 ou 5 fois pour créer un peu d'espace vertical, puis attendez qu'il cesse de fonctionner. Espérons qu'il y aura quelques indices dans la sortie.
la source
Essayez d'utiliser:
tail --follow=name <logfile>
Et voyez si cela fonctionne mieux. Vous n'avez pas à vous soucier de sa rotation sous vous.
Un motif qui s'arrête? Certaine durée? Une certaine heure de la journée?
la source
tail
- c'est juste périodiquement (entre 2 et 20 heures) qui s'arrête de suivre plus. J'aimerais qu'il y ait plus d'un modèle: - \screen
session pour un débogage prolongé, et c'est inquiétantÉtant donné que les deux fichiers journaux problématiques sont écrits par différents composants de la même application, je me demande si ce n'est pas une partie du code de journalisation de cette application qui cause le problème. Je propose deux tests pour avoir une meilleure idée de ce qui se passe:
Notez l'inode du fichier journal (
ls -i logfile
) avant de démarrer la queue, et une fois que la queue échoue, vérifiez-la à nouveau. Si l'inode a changé, l'enregistreur réécrit l'intégralité du fichier journal, ce qui romprait la connexion de la queue.Notez la dernière ligne avant que tail cesse de fonctionner, puis visitez le fichier et recherchez la première entrée de journal après cette ligne. Faites cela 3-5 fois si possible. S'il s'agit d'un problème avec le programme effectuant la journalisation, la partie du programme qui a écrit l'entrée de journal immédiatement après que vous voyez une rupture de queue est très probablement responsable. Si cette entrée de journal est toujours la même, ou si elle provient du même composant du programme, vous pouvez avoir suffisamment de données pour soumettre un rapport de problème au fournisseur de l'application.
Bonne chance.
la source
Avoir le même problème ici.
Le problème était que le fichier que je regardais était monté à partir d'une autre machine. La notification de modification n'a pas été propagée via le montage.
La solution était d'utiliser la queue sur la machine d'origine.
la source