Ein Terminalfenster auf einem Linux-Laptop

Fatmawati Achmad Zaenuri/Shutterstock

Die Linux-Systemprotokollierung hat sich mit der Einführung von |_+_| geändert. Erfahren Sie, wie Sie |_+_| . verwenden Befehl zum Lesen und Filtern von Systemprotokollnachrichten.



Zentralisierte Protokollierung

Kontroversen sind keine Unbekannten, die |_+_| System- und Servicemanager führte eine bedeutende Änderung in der Art und Weise ein, wie Systemprotokolle gesammelt werden. Früher befanden sich Protokolle je nach Dienst oder Daemon, der sie erstellt hat, an verschiedenen Stellen im Dateisystem. Aber eines hatten sie alle gemeinsam. Es waren reine Textdateien.

Mit |_+_| Alle System-, Boot- und Kernel-Protokolldateien werden von einer zentralen, dedizierten Protokollierungslösung gesammelt und verwaltet. Das Format, in dem sie gespeichert werden, ist ein binäres. Dies erleichtert unter anderem die Möglichkeit, die Daten in verschiedene Formate zu extrahieren, wie z JSON , wie wir sehen werden.

es kann auch den Querverweis auf verwandte Informationen erleichtern, die zuvor in separaten Protokolldateien aufgezeichnet wurden. Da die Daten nun in einem einzigen Journal gehalten werden, können die Daten aus mehreren interessanten Quellen ausgewählt und in einer einzigen ineinander verwobenen Liste von Einträgen angezeigt werden.

|_+_| ist das Werkzeug habe früher mit der Zeitschrift gearbeitet .

Journalctl ohne Schnickschnack

Sie können |_+_| . aufrufen ohne Befehlszeilenparameter:

systemd

|_+_| zeigt das gesamte Journal an, wobei die ältesten Einträge ganz oben in der Liste stehen. Die Liste wird in |_+_| angezeigt, sodass Sie mit den üblichen Navigationsfunktionen von |_+_| blättern und suchen können. Sie können auch die |_+_| und |_+_| Tasten zum seitlichen Blättern, um breite Protokolleinträge zu lesen.

Drücken der |_+_| -Taste springt direkt an das Ende der Liste und die neuesten Protokolleinträge.

Drücken Sie |_+_| beenden.

VERBUNDEN: So verwenden Sie den less-Befehl unter Linux

Obwohl |_+_| kann ohne |_+_| aufgerufen werden, Sie werden sicherstellen, dass Sie alle Details sehen im Protokoll, wenn Sie |_+_| verwenden.

journalctl

Bei Bedarf können Sie |_+_| sendet seine Ausgabe an das Terminalfenster statt an |_+_|, indem Sie das |_+_| . verwenden Möglichkeit.

systemd

Die Ausgabe scrollt schnell durch das Terminalfenster, und Sie kehren zur Eingabeaufforderung zurück.

Um die Anzahl der Zeilen zu begrenzen, die |_+_| zurückgibt, verwende das |_+_| (Linien) Option. Lassen Sie uns nach zehn Ausgabezeilen fragen:

systemd

Folgende Zeitschriftenaktualisierungen

Um |_+_| . zu machen Zeigen Sie die neuesten Einträge an, sobald sie im Journal eintreffen, verwenden Sie die |_+_| (folgen) Option.

journalctl

Anzeige

Der neueste Eintrag hat einen Zeitstempel von 07:09:07. Wenn eine neue Aktivität stattfindet, werden die neuen Einträge am unteren Rand der Anzeige angehängt. Nahezu Echtzeit-Updates – cool!

Um 07:09:59 eine Anwendung namens |_+_| fügte einen Protokolleintrag in das Journal ein, der besagte, Neue Nachricht von HTG.

Ändern des Anzeigeformats

Da das Journal eine Binärdatei ist, müssen die darin enthaltenen Daten übersetzt oder in Text geparst werden, bevor sie Ihnen angezeigt werden können. Mit unterschiedlichen Parsern können aus denselben binären Quelldaten unterschiedliche Ausgabeformate erstellt werden. Es gibt verschiedene Formate, die |_+_| Kann benutzen.

Die Standardausgabe ist das Kurzformat, das dem klassischen Systemprotokollformat sehr ähnlich ist. Um das Kurzformat explizit anzufordern, verwenden Sie das |_+_| (Ausgabe)-Option mit der |_+_| Modifikator.

journalctl

Von links nach rechts sind die Felder:

  • Die Uhrzeit, zu der die Nachricht erstellt wurde, in Ortszeit.
  • Der Hostname.
  • Der Prozessname. Dies ist der Prozess, der die Nachricht generiert hat.
  • Die Protokollnachricht.

Um einen vollständigen Datums- und Zeitstempel zu erhalten, verwenden Sie die |_+_| Modifikator:

Pixel Live-Untertitel ausschalten
journalctl

Die Datums- und Uhrzeitformate in dieser Ausgabe sind das Format, in dem Sie Datum und Uhrzeit angeben müssen, wenn Sie Protokollmeldungen nach Zeitraum auswählen, wie wir gleich sehen werden.

Anzeige

Um alle Metadaten anzuzeigen, die jeder Protokollnachricht beiliegen, verwenden Sie |_+_| Modifikator.

less

Dort sind viele mögliche Felder , aber es kommt selten vor, dass alle Felder in einer Nachricht vorhanden sind.

Ein Thema, das es wert ist, diskutiert zu werden, ist das |_+_| Bereich. In diesem Beispiel hat es den Wert 6. Der Wert repräsentiert die Bedeutung der Nachricht:

    0: Notfall. Das System ist unbrauchbar. eins: Alarm. Es wurde eine Bedingung gemeldet, die sofort behoben werden sollte. zwei: Kritisch. Dies deckt Abstürze, Coredumps und erhebliche Ausfälle in primären Anwendungen ab. 3: Fehler. Es wurde ein Fehler gemeldet, der jedoch nicht als schwerwiegend angesehen wird. 4: Warnung. Macht Sie auf einen Zustand aufmerksam, der bei Nichtbeachtung zu einem Fehler werden kann. 5: Notiz. Wird verwendet, um ungewöhnliche Ereignisse, aber keine Fehler zu melden. 6: Information. Regelmäßige Betriebsmeldungen. Diese erfordern keine Maßnahmen. 7: Debuggen. Nachrichten, die in Anwendungen eingefügt werden, um ihnen das Debuggen zu erleichtern.

Wenn Sie möchten, dass die Ausgabe richtig formatiert dargestellt wird JavaScript-Objekt-Notation (JSON)-Objekte verwenden Sie die |_+_| Modifikator:

less

Jede Nachricht wird ordnungsgemäß als wohlgeformtes JSON-Objekt verpackt und eine Nachricht pro Ausgabezeile angezeigt.

Um die JSON-Ausgabe zu haben hübsch bedruckt , benutze das |_+_| Modifikator.

Left Arrow

Anzeige

Jedes JSON-Objekt ist auf mehrere Zeilen aufgeteilt, wobei jedes Name-Wert-Paar in einer neuen Zeile steht.

Kachelfenster in windows 7

Um nur die Protokolleintragsnachrichten ohne Zeitstempel oder andere Metadaten anzuzeigen, verwenden Sie |_+_| Modifikator:

Right Arrow

Dieses Anzeigeformat kann es schwierig machen, zu erkennen, welcher Prozess das Protokollereignis ausgelöst hat, obwohl einige Meldungen einen Hinweis enthalten.

Auswählen von Protokollnachrichten nach Zeitraum

Um die Ausgabe von |_+_| . zu begrenzen zu einem gewünschten Zeitraum verwenden Sie |_+_| (seit) und |_+_| (bis) Optionen.

Verwenden Sie diesen Befehl, um die Protokolleinträge seit einer bestimmten Uhrzeit und einem bestimmten Datum anzuzeigen:

End

Die Anzeige enthält nur Meldungen, die nach Datum und Uhrzeit im Befehl angekommen sind.

Anzeige

Um einen Zeitraum zu definieren, über den Sie berichten möchten, verwenden Sie die beiden |_+_| (seit) und |_+_| (bis) Optionen zusammen. Dieser Befehl betrachtet Protokollnachrichten aus einem Zeitraum von 15 Minuten.:

Ctrl+C

Dies ist eine großartige Kombination, wenn Sie wissen, dass auf Ihrem System etwas Seltsames passiert ist und ungefähr wann es passiert ist.

Verwenden relativer Zeiträume

Sie können die relative Adressierung verwenden, wenn Sie Ihre Zeiträume auswählen. Das heißt, Sie können Dinge wie Zeig mir alle Ereignisse von vor einem Tag bis jetzt sagen. Genau das bedeutet dieser Befehl. Das d steht für Tag und die -1 bedeutet einen Tag in der Vergangenheit.

journalctl

Die Log-Meldungen werden von 00:00:00 gestern bis jetzt aufgelistet.

Wenn Sie etwas untersuchen möchten, das sich in der jüngeren Vergangenheit ereignet hat, können Sie einen relativen Zeitraum in Stunden angeben. Hier überprüfen wir die Protokollnachrichten der letzten Stunde:

sudo

Die Nachrichten der letzten Stunde werden Ihnen angezeigt. Sie können auch m verwenden, um relative Zeiträume in Minuten und w für Wochen einzustellen.

Anzeige

|_+_| versteht |_+_|, |_+_| und |_+_|. Diese Modifikatoren bieten eine praktische Möglichkeit, allgemeine Zeiträume anzugeben. Um alle Ereignisse anzuzeigen, die gestern passiert sind, verwenden Sie diesen Befehl:

sudo

Alle gestrigen Tagebuch-Ereignisse bis Mitternacht 00:00:00 werden abgerufen und für Sie angezeigt.

Um alle bisher empfangenen Protokollnachrichten anzuzeigen, verwenden Sie diesen Befehl:

journalctl

Es wird alles von 00:00:00 bis zum Zeitpunkt der Befehlsausgabe angezeigt.

Sie können die verschiedenen Zeitdauer-Modifikatoren mischen. Um alles von vor zwei Tagen bis heute zu sehen, verwenden Sie diesen Befehl:

less

Alles von vorgestern bis heute wird abgerufen und angezeigt.

Auswählen von Protokollnachrichten nach Datenfeldern

Sie können nach Protokollnachrichten suchen die zu einer Vielzahl von Zeitschriftenbereichen passen . Diese Suchen versuchen, Übereinstimmungen in den Metadaten zu finden, die an jede Nachricht angehängt sind. Es wird empfohlen, dass Sie siehe Liste der Felder und wählen Sie diejenigen aus, die für Sie am nützlichsten sind.

Anzeige

Bedenken Sie, ob ein Antrag alle Felder ausfüllt oder nicht, liegt ganz bei den Autoren des Antrags. Sie können nicht garantieren, dass jedes Feld ausgefüllt wird.

Alle Journalfeldmodifikatoren werden auf die gleiche Weise verwendet. Wir werden einige in unseren Beispielen unten verwenden. Um nach Protokollnachrichten einer bestimmten Anwendung zu suchen, verwenden Sie |_+_| (Befehl) Modifikator. Wenn Sie auch die |_+_| . verwenden (folgen) Option, |_+_| verfolgt neue Nachrichten von dieser Anwendung, sobald sie eintreffen.

--no-pager

Log-Einträge können Sie über die Prozess ID des Prozesses, der die Protokollnachricht generiert hat. Verwenden Sie die |_+_| Befehl, um die zu finden Prozess-ID des Daemons oder der Anwendung, nach der Sie suchen werden .

journalctl

Auf der Maschine, mit der dieser Artikel recherchiert wurde, ist die SSH Daemon ist Prozess 751.

Sie können auch suchen nach Benutzeridentifikation . Dies ist die Benutzer-ID der Person, die die Anwendung oder den Befehl gestartet hat oder der den Prozess besitzt.

-n

Alle Nachrichten, die mit anderen Benutzer-IDs verknüpft sind, werden herausgefiltert. Es werden nur Nachrichten angezeigt, die sich auf den Benutzer 1000 beziehen:

Eine andere Möglichkeit, nach Protokollnachrichten zu suchen, die sich auf eine bestimmte Anwendung beziehen, besteht darin, den Pfad zur ausführbaren Datei anzugeben.

journalctl

Alle |_+_| Scheduler-Log-Meldungen werden abgerufen und angezeigt .

Anzeige

Um die Suche zu erleichtern, können wir |_+_| . fragen um alle darin enthaltenen Werte für eines der Journalfelder aufzulisten.

Um die Benutzer-IDs anzuzeigen, die |_+_| Protokollnachrichten für aufgezeichnet hat, verwenden Sie die |_+_| (Felder) und übergeben die |_+_| Feldkennung.

-f

Machen wir das noch einmal und schauen wir uns die an Gruppen-IDs (GIDs):

geek-app

Sie können dies mit jedem der Feldbezeichner für Journale .

Kernel-Nachrichten auflisten

Es gibt eine integrierte Möglichkeit, Kernel-Nachrichten schnell zu isolieren. Sie müssen sie nicht selbst suchen und isolieren. Die |_+_| (Kernel)-Option entfernt alle anderen Meldungen und gibt Ihnen eine sofortige Ansicht der Kernel-Log-Einträge.

journalctl

Die Hervorhebung spiegelt die Bedeutung der Nachricht entsprechend den Werten im |_+_| Bereich.

Boot-Meldungen überprüfen

Wenn Sie ein Problem beim Booten haben, das Sie untersuchen möchten, |_+_| hat dich bedeckt. Vielleicht haben Sie neue Hardware hinzugefügt und diese reagiert nicht oder eine zuvor funktionierende Hardwarekomponente funktioniert nach Ihrem letzten Systemupgrade nicht mehr.

Um die Protokolleinträge zu Ihrem letzten Start anzuzeigen, verwenden Sie |_+_| (Boot-Option:

-o

Die Log-Einträge des letzten Bootvorgangs werden Ihnen angezeigt.

Wenn wir letztes Booten sagen, meinen wir den Bootvorgang, der Ihren Computer für Ihre aktuelle angemeldete Sitzung zum Leben erweckt hat. Um frühere Stiefel zu sehen, können Sie eine Zahl verwenden, um |_+_| . anzugeben an welchem ​​Boot Sie interessiert sind. Um den dritten vorherigen Boot anzuzeigen, verwenden Sie diesen Befehl:

short

Wenn Sie ein Problem hatten und Ihren Computer neu starten mussten, ist dies im Allgemeinen eine vorherige Bootsequenz, an der Sie interessiert sind. Dies ist also eine gängige Befehlsform.

Bei der Reihenfolge der Stiefel kann man leicht verwechselt werden. Um zu helfen, können wir |_+_| . fragen um die Stiefel aufzulisten, die es in seinem Tagebuch aufgezeichnet hat, mit dem |_+_| Möglichkeit.

short-full

Anhand des Datums- und Zeitstempels können Sie den Bootvorgang identifizieren, für den Sie Nachrichten anzeigen möchten, und dann die Nummer in der linken Spalte verwenden, um die Protokollnachrichten für diese Bootsequenz abzurufen. Sie können auch die 32-Bit-Boot-ID auswählen und diese an |_+_| übergeben.

verbose

Anzeige

Die Protokollmeldungen der angeforderten Bootsequenz werden abgerufen und angezeigt.

Journal-Festplattenspeicher verwalten

Natürlich werden das Journal und alle seine Log-Meldungen auf Ihrer Festplatte gespeichert. Das bedeutet, dass sie Speicherplatz auf der Festplatte belegen. Um zu sehen, wie viel Platz das Tagebuch eingenommen hat, verwenden Sie |_+_| Möglichkeit.

Priority

Bei heutigen Festplatten sind 152 MB nicht viel Platz, aber zu Demonstrationszwecken werden wir ihn trotzdem zurückschneiden. Es gibt zwei Möglichkeiten, dies zu tun. Die erste besteht darin, eine Größenbeschränkung festzulegen, auf die das Journal zurückverkleinert werden soll. Es wird natürlich wieder wachsen, aber wir können es jetzt für dieses neue Wachstum beschneiden.

Wir verwenden das wunderbar betitelte |_+_| Option, und geben Sie die Größe ein, auf die das Journal reduziert werden soll. Wir bitten um 100 MB. Die Art zu denken ist, wir fragen |_+_| wegzuwerfen, was immer Sie können, aber gehen Sie nicht unter 100 MB.

json

Die andere Möglichkeit, die Journalgröße zu verkleinern, besteht darin, das |_+_| . zu verwenden Möglichkeit. Diese Option sagt |_+_| um Nachrichten zu verwerfen, die älter sind als der von Ihnen in der Befehlszeile angegebene Zeitraum. Sie können |_+_|, |_+_|, |_+_| und |_+_| . verwenden im Zeitraum.

wie man discord server einrichtet

Lassen Sie uns alle Nachrichten aussortieren, die älter als eine Woche sind:

json-pretty

Daten vs. Informationen

Daten sind nicht nützlich, es sei denn, Sie können darauf zugreifen und sie nutzen. Dann werden daraus nützliche Informationen. Die |_+_| command ist ein flexibles und ausgeklügeltes Werkzeug, mit dem Sie auf verschiedene Weise auf die gewünschten Informationen zugreifen können.

Sie können fast jeden Informationsschnipsel verwenden, um die benötigten Protokollnachrichten zu erfassen.

Linux-Befehle
Dateien Teer · pv · Katze · tac · chmod · Griff · unterschied · sed · Mit · Mann · geschoben · popd · fsck · Testdisk · seq · fd · pandoc · CD · $PFAD · awk · beitreten · jq · falten · einzigartig · Journalctl · Schwanz · Zustand · ls · fstab · rauswerfen · weniger · chgrp · chown · rev · suchen · Saiten · Typ · umbenennen · Postleitzahl · entpacken · montieren · ummount · Installieren · fdisk · mkfs · rm · rmdir · rsync · df · gpg · wir · Nano · mkdir · von · ln · Patch · Konvertieren · rclon · Fetzen · SRM
Prozesse alias · Bildschirm · oben · nett · renice · Fortschritt · strace · System · tmux · chsh · Geschichte · beim · Charge · kostenlos · die · dmesg · Benutzermod · ps · chroot · xargs · tty · kleiner Finger · lsof · vmstat · Auszeit · Mauer · ja · töten · Schlaf · sudo · seine · Zeit · groupadd · Benutzermod · Gruppen · lshw · stilllegen · neu starten · halt · ausschalten · passwd · lscpu · crontab · Datum · bg · fg
Vernetzung netstat · Klingeln · Traceroute · ip · ss · Wer ist · fail2ban · bmon · Sie · Finger · nmap · ftp · Locken · wget · Wer · Wer bin ich · In · iptables · ssh-keygen · ufw

VERBUNDEN: Beste Linux-Laptops für Entwickler und Enthusiasten

WEITER LESEN