Beobachten Sie mehrere Protokolldateien in einer Ausgabe


60

Gibt es eine einfache Möglichkeit, etwas tail -f mylogfileanderes zu tun, als die Änderungen von mehr als einer Datei anzuzeigen (möglicherweise mit dem Dateinamen als Präfix in jeder Zeile)? Oder vielleicht ein GUI-Tool? Ich verwende Debian.



Danke für diesen Tipp. Dies ist ein sehr hilfreiches Tool. Es kann auch Dateien kürzen, den Bildschirm mit einer Verknüpfung löschen und so weiter.
Stofl

Antworten:


92

Hast du es versucht tail -f file1 file2? Es scheint genau das zu tun, was Sie wollen, zumindest auf meinem FreeBSD-Rechner. Vielleicht kann das tail, was mit einem Debian-System kommt, das auch?


2
Ja. Es klappt! Danke. Ich hätte nie gedacht, dass es so einfach wird.
Stofl

11
Ich verwende normalerweise -Fstattdessen, da einige Dateien möglicherweise abgeschnitten werden, wenn ich Serverprogramme neu starte.
Arcege,

10
Meine neue Lieblingsparameterkombination ist tail -qF *.log: -qdie Dateinamen auszublenden und -F, wie Arcege betont hat, taildem Namen und nicht dem Deskriptor zu folgen, weil meine Protokolldateien gedreht werden.
Denis Drescher

Validiert auch auf Ubuntu 16.04 LTS
Ricardo

Dem sind Grenzen gesetzt. Ich habe einen Ordner mit Protokolldateien von PID für einen Arbeiter, der für jeden neuen Job in einer Warteschlange gestartet wird (also viele PIDs). Wenn ich tail -f /var/log/folder/*den Fehler "/ usr / bin / tail kann nicht ausgeführt werden: Argumentliste zu lang" zurückgebe
flickerfly

3

Aus irgendeinem Grund entsprachen die Antworten tail -f file1 file2nicht ganz meinen Vorstellungen.

Ich möchte wissen, was in mehreren Protokollen passiert ist, die in letzter Zeit "lokal" waren, unabhängig von der globalen chronologischen Reihenfolge.

Um das zu tun, habe ich etwas Ähnliches verwendet watch -n1 tail -n10 file1 file2


1

Für die Übung habe ich ein kleines Node-Utility geschrieben, das dasselbe macht wie tail -f f1 f2 f3

Splex:

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

Das wichtigste "Upgrade" ist, dass die Zeilen pro Dateiname farbcodiert sind und dass Sie eine tabellenartige Oberfläche haben können.

Eine weitere Verbesserung, eigentlich der Hauptgrund, warum ich das geschrieben habe, ist die Möglichkeit, .splexrc.json- Dateien in verschiedenen Ordnern zu haben. Sie müssen also stattdessen tail -f f1 f2 f3einen Ordner und dann verschiedene Dateien in einen anderen Ordner eingeben, um .splexrc.json-Dateien im Stammverzeichnis von zu schreiben Geben Sie Ihr Projekt einfach splexohne Dateilistenargumente ein und es werden automatisch relevante Protokolle gestreamt, die Sie in der Konfigurationsdatei aufgelistet haben.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.