4 votes

Traiter plusieurs fichiers journaux

J'ai une application qui génère de nouveaux fichiers journaux à chaque fois qu'elle est exécutée. Ils sont tous placés dans un dossier, avec des noms de fichiers comme celui-ci, et le journal suivant n'est pas lancé tant que le journal actuel n'est pas terminé.

Log-20140122102407.txt
Log-20140122102739.txt
Log-20140122103640.txt
Log-20140122162121.txt
Log-20140122163145.txt

Je veux surveiller la progression actuelle dans une fenêtre de terminal, comme suit tail -f mais cela ne fonctionne pas avec plusieurs fichiers. J'ai entendu parler de multitail, mais je ne sais pas comment l'utiliser, et je ne veux pas que ma fenêtre de terminal soit divisée en plusieurs sections.

5voto

Graham Miln Points 39606

Queue

tail peut queue plusieurs fichiers. L'article de Donovan Bray en dit plus, tail : peut suivre plusieurs fichiers simultanément, qui l'eut cru ? et autres astuces de tail.

Pour suivre plusieurs fichiers, passez dans un modèle de fichier :

tail -f Log-*

multitail

Vous pouvez demander multitail pour combiner les résultats de plusieurs fichiers. Le site page d'exemples contient des approches et des astuces utiles.

Cette commande combine et termine deux journaux :

multitail /var/log/apache/access.log -I /var/log/apache/error.log

Si vous avez besoin d'écrêter tous les journaux d'un dossier, y compris ceux en cours de création, utilisez la commande -q drapeau :

multitail -q 'test*'

Ceci suivra tous les fichiers correspondant au modèle test* y compris celles qui apparaissent après l'émission de la commande. Merci à @folkert-van-heusden pour cette suggestion et la correction du code.

Si vous avez homebrew installé, vous pouvez installer multitail en utilisant la commande Terminal.app :

brew install multitail

Voir aussi :

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X