GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So fügen Sie Nachrichten manuell zu Linux-Systemprotokolldateien hinzu

Eine Protokolldatei ist eine Datei, die eine Reihe von Datensätzen (oder eine Liste von Ereignissen) enthält, die vom System selbst protokolliert wurden. Anhand der Protokolldateien kann der Systemadministrator verfolgen, was an einem bestimmten Tag oder zu einer bestimmten Uhrzeit passiert ist. Meistens werden Protokolldateien von den Administratoren zur Fehlerbehebung verwendet. Die Protokolldateien werden automatisch generiert und in einem gemeinsamen Verzeichnis gespeichert - /var/log/ . Wir können Nachrichten auch manuell zu Linux-Systemprotokolldateien hinzufügen. Beispielsweise nach dem Einrichten eines Protokollservers , möchten Sie möglicherweise überprüfen, ob der Protokollserver ordnungsgemäß funktioniert oder nicht. Dazu können wir manuell einige Einträge in den Protokolldateien hinzufügen, um den Protokollserver zu testen. Hier sind Logger Befehl ist praktisch.

Mit dem Logger-Befehl Meldungen zu Linux-Systemprotokolldateien hinzufügen

Der Logger-Befehl ist Teil von util-linux Paket, also machen Sie sich nicht die Mühe, es zu installieren. Lassen Sie mich Ihnen einige Beispiele zeigen.

Das manuelle Hinzufügen von Einträgen zu den Systemprotokolldateien ist absolut einfach! Die typische Verwendung des Logger-Befehls ist:

logger <message-to-add>

Beispiel:

$ logger Welcome to OSTechNix

Der obige Befehl fügt den Eintrag „Willkommen bei OSTechNix“ zu den Systemprotokolldateien hinzu.

Lassen Sie uns mit 'tail' überprüfen, ob die Nachricht hinzugefügt wurde oder nicht Befehl:

$ tail -l /var/log/syslog

Beispielausgabe:

Jan 31 07:19:23 ubuntuserver systemd[1705]: Listening on REST API socket for snapd user session agent.
Jan 31 07:19:23 ubuntuserver systemd[1705]: Listening on GnuPG network certificate management daemon.
Jan 31 07:19:23 ubuntuserver systemd[1705]: Listening on GnuPG cryptographic agent and passphrase cache.
Jan 31 07:19:23 ubuntuserver systemd[1705]: Reached target Sockets.
Jan 31 07:19:23 ubuntuserver systemd[1705]: Reached target Timers.
Jan 31 07:19:23 ubuntuserver systemd[1705]: Reached target Basic System.
Jan 31 07:19:23 ubuntuserver systemd[1]: Started User Manager for UID 1000.
Jan 31 07:19:23 ubuntuserver systemd[1705]: Reached target Default.
Jan 31 07:19:23 ubuntuserver systemd[1705]: Startup finished in 298ms.
Jan 31 07:33:14 ubuntuserver sk: Welcome to OSTechNix

Wie Sie in der Ausgabe sehen, wurde die angegebene Nachricht zur Syslog-Datei hinzugefügt.

Hinweis:

Verschiedene Linux-Betriebssysteme speichern Protokollmeldungen in verschiedenen Dateien. Ich schlage vor, dass Sie in /var/log/ nachsehen Verzeichnis, um zu erfahren, in welchen Dateien die Protokolle gespeichert sind. In RPM-basierten Systemen wie CentOS werden die allgemeinen Protokollmeldungen in /var/log/messages gespeichert Datei anstelle von /var/log/syslog Datei.

Sie können die Nachrichten auch hinzufügen, indem Sie sie in einfache oder doppelte Anführungszeichen setzen.

$ logger "Welcome to OSTechNix blog"

Oder,

$ logger 'Howdy, Welcome to OSTechNix blog'

Prüfen Sie mit dem tail-Befehl, ob die Einträge zur Syslog-Datei hinzugefügt wurden:

$ tail -l /var/log/syslog 
[...]
Jan 31 07:40:02 ubuntuserver sk: Welcome to OSTechNix blog
Jan 31 07:40:31 ubuntuserver sk: Howdy, Welcome to OSTechNix blog

Logger-PID zu Systemprotokollen hinzufügen

Wir können sogar die PID des Logger-Prozesses protokollieren mit jeder Zeile mit -i kennzeichnen wie unten.

$ logger -i 'Howdy, Welcome to OSTechNix blog'

Überprüfen Sie die Log-Meldungen mit dem tail-Befehl:

$ tail -l /var/log/syslog 
[...]
Jan 31 07:49:22 ubuntuserver sk[1879]: Howdy, Welcome to OSTechNix blog

Hier, 1879 ist die Prozess-ID des Loggers.

Tags zu Nachrichten hinzufügen

Wie Sie vielleicht in den obigen Ausgaben bemerkt haben, werden die neu hinzugefügten Einträge mit dem aktuell angemeldeten Benutzernamen gekennzeichnet, z. B. sk . Das Standard-Tag ist der Name des am Terminal angemeldeten Benutzers. Wir können jedoch mit -t jede zu protokollierende Zeile mit einem bestimmten Tag markieren Flagge.

$ logger -i -t ostechnix 'Howdy, Welcome to OSTechNix blog'

Überprüfen Sie die Protokolleinträge:

$ tail -l /var/log/syslog 
[...]
Jan 31 07:54:02 ubuntuserver ostechnix[1881]: Howdy, Welcome to OSTechNix blog

Sehen? der letzte Eintrag ist mit ostechnix getaggt und seine Prozess-ID ist 1881 .

Meldungen aus einer Datei zu den Protokolldateien hinzufügen

Es ist auch möglich, Einträge aus einer Datei zu unseren Systemprotokolldateien hinzuzufügen.

Lassen Sie uns eine Beispieltextdatei erstellen.

$ echo "This is test file" > file.txt
$ cat file.txt 
This is test file

Fügen Sie nun den Inhalt der Datei „file.txt“ mit dem folgenden Befehl zu den Systemprotokolldateien hinzu:

$ logger -f file.txt

Protokolldateien prüfen:

$ tail -l /var/log/syslog 
[...]
Jan 31 08:43:06 ubuntuserver sk: This is test file

Wenn die Eingabedatei leere Zeilen enthält, können Sie diese mit -e von der Aufnahme in die Protokolldateien ausschließen kennzeichnen wie unten.

$ logger -e -f file.txt

Nachrichten mit Priorität protokollieren

Es ist möglich, Nachrichten mit einer bestimmten Priorität zu protokollieren.

$ logger "Welcome To OSTechNix" --priority user.warning

Die Standardpriorität ist 'user.notice' . Sehen Sie sich die Logger-Manpage an, um alle verfügbaren Prioritätsoptionen zu erfahren.

Nehmen Sie Eingaben von 'stdin' und Nachrichten an Systemprotokolle entgegen

Wir können die Eingabe von stand input umleiten und sie mit dem Befehl:

in das Syslog verschieben
$ echo "Welcome to OSTechNix" | logger

Nachrichten an entfernten Protokollserver senden

Führen Sie Folgendes aus, um die Nachrichten an einen entfernten Syslog-Server zu senden, der an einem bestimmten Port ausgeführt wird:

$ logger "Welcome to OSTechNix" --server <hostname-or-ip> --port <port-no>

Oder,

$ logger "Welcome to OSTechNix" -n <hostname-or-ip> -p <port-no>

Die Standardportnummer ist 514 .

Begrenzen Sie die Größe der Nachrichten

Wir können die maximal zulässige Nachrichtengröße mit --size festlegen Flagge.

$ logger --size 5 abcdefghijklmnopqrswxyz

Überprüfen Sie die Größe der Protokollnachricht:

$ tail -l /var/log/syslog 
[...]
Jan 31 09:09:02 ubuntuserver sk: abcde

Der Standardwert ist 1 KiB Zeichen.

Weitere Einzelheiten finden Sie in den Manpages.

$ man logger

Empfohlene Lektüre:

  • So verwalten Sie Protokolldateien mit Logrotate unter Linux

Linux
  1. So verwalten Sie Protokolldateien mit Logrotate unter Linux

  2. So rotieren Sie Apache-Protokolldateien unter Linux

  3. Wie man alle oder bestimmte Dateien in Linux gzippt

  4. So finden Sie Dateien im DOS-Format in einem Linux-Dateisystem

  5. So fügen Sie mehrere JAR-Dateien im Klassenpfad unter Linux hinzu

So fügen Sie unter Linux ein neues Gerät zum BTRFS-Dateisystem hinzu

So fügen Sie Benutzer zu Sudoers in Debian-basiertem Linux hinzu

So zeigen Sie Nginx-Protokolldateien unter Linux an

So zeigen Sie Apache-Protokolldateien unter Linux an

So erstellen Sie Dateien in einem Linux-System:Ein ultimativer Leitfaden

So fügen Sie einen sudo-Benutzer im Linux-System hinzu oder erstellen ihn [Schnellstart]