Provided by: util-linux-locales_2.40.2-1ubuntu1_all bug

BEZEICHNUNG

       logger - Meldungen in das Systemprotokoll übertragen

ÜBERSICHT

       logger [Optionen] Meldung

BESCHREIBUNG

       logger überträgt Einträge in das Systemprotokoll.

       Wenn das optionale Argument Meldung angegeben ist, wird diese Meldung in das
       Systemprotokoll übertragen. Falls weder das Argument noch die Option -f angegeben ist,
       wird der Inhalt der Standardeingabe protokolliert.

OPTIONEN

       -d, --udp
           verwendet nur Datagramme (UDP). Standardmäßig wird die Verbindung über den in
           /etc/services definierten Syslog-Port versucht, oft ist dieser der Port 514.

           Siehe auch --server und --socket, um anzugeben, wohin verbunden werden soll.

       -e, --skip-empty
           ignoriert leere Zeilen beim Verarbeiten von Dateien. Eine leere Zeile wird hierbei als
           Zeile definiert, die keinerlei Zeichen enthält. Daher wird eine Zeile, die nur
           Leerraum enthält, NICHT als leere Zeile angesehen. Beachten Sie, dass bei Angabe der
           Option --prio-prefix die Priorität nicht Teil der Zeile ist. Daher wird in diesem
           Modus eine Zeile als leer angesehen, die nach dem Prioritäts-Präfix (z.B. <13>) keine
           Zeichen enthält.

       -f, --file Datei
           protokolliert den Inhalt der angegebenen Datei. Diese Option kann nicht mit einer
           Befehlszeilenmeldung kombiniert werden.

       -i
           protokolliert mit jeder Zeile die Prozesskennung des logger-Prozesses.

       --id[=ID]
           protokolliert die Prozesskennung des logger-Prozesses mit jeder Zeile. Wenn das
           optionale Argument Kennung angegeben ist, wird dieses anstelle der Prozesskennung des
           logger-Befehls verwendet. In Skripten, die mehrere Meldungen senden, wird die
           Verwendung von --id=$$ (PPID) empfohlen.

           Beachten Sie, dass die Infrastruktur der Systemprotokollierung (zum Beispiel systemd
           beim Warten an /dev/log) den Anmeldedaten lokaler Sockets folgen könnte, um die in der
           Meldung angegebene Prozesskennung außer Kraft zu setzen. logger(1) ist in der Lage,
           dessen Socket-Anmeldedaten auf die angegebene Kennung zu setzen, was aber voraussetzt,
           dass Sie über Root-Rechte verfügen und ein Prozess mit der angegebenen Prozesskennung
           existiert. Anderenfalls werden die Anmeldedaten des Sockets nicht verändert und das
           Problem stillschweigend ignoriert.

       --journald[=Datei]
           schreibt einen systemd-Journaleintrag. Der Eintrag wird aus der angegebenen Datei
           gelesen, ansonsten aus der Standardeingabe. Jede Zeile muss mit einem Feld beginnen,
           das von journald akzeptiert wird; siehe systemd.journal-fields(7) für Details. Es ist
           im Allgemeinen eine gute Idee, ein MESSAGE_ID-Feld zu verwenden, da es das Auffinden
           von Einträgen erleichtert. Beispiele:

                  logger --journald <<end
                  MESSAGE_ID=67feb6ffbaf24c5cbec13c008dd72309
                  MESSAGE=The dogs bark, but the caravan goes on.
                  DOGS=bark
                  CARAVAN=goes on
                  end

                  logger --journald=Eintrag.txt

           Beachten Sie, dass --journald Werte anderer Optionen ignoriert, wie beispielsweise die
           Priorität. Falls die Priorität nötig ist, muss sie innerhalb der Eingabe stehen und
           das Feld PRIORITY verwenden. Die einfache Ausführung von journalctl(1) wird das
           MESSAGE-Feld anzeigen. Mit journalctl --output json-pretty werden die übrigen Felder
           angezeigt.

           Um Zeilenumbrüche in MESSAGE zu verwenden, geben Sie MESSAGE mehrfach an. Dies wird
           als Spezialfall behandelt, andere Felder werden als ein Feld im Journal gespeichert,
           falls sie mehrfach auftauchen.

       --msgid msgid
           Setzt das MSGID-Feld gemäß RFC 5424 <https://tools.ietf.org/html/rfc5424>. Beachten
           Sie, dass innerhalb von MSGID kein Leerzeichen zulässig ist. Diese Option wird nur
           verwendet, wenn zugleich --rfc5424 angegeben ist, anderenfalls wird sie
           stillschweigend ignoriert.

       -n, --server Server
           schreibt auf den angegebenen fernen Systemprotokoll-Server statt in den
           Systemprotokoll-Socket. Außer wenn --udp oder --tcp angegeben ist, versucht logger
           zuerst, UDP zu verwenden; wenn dies fehlschlägt, wird eine TCP-Verbindung versucht.

       --no-act
           führt alles aus, außer dem Schreiben der Meldung in das Systemprotokoll und Entfernen
           der Verbindung zum Journal. Diese Option kann zusammen mit --stderr für Testzwecke
           verwendet werden.

       --octet-count
           verwendet die Octet-Counting-Framing-Methode gemäß RFC 6587
           <https://tools.ietf.org/html/rfc6587> zum Senden von Meldungen. Wenn diese Option
           nicht verwendet wird, wird kein Framing mit UDP verwendet und nicht-transparentes
           Framing (auch als »Octet Stuffing« bekannt) mit TCP.

       -P, --port Port
           verwendet den angegebenen Port. Wenn diese Option nicht angegeben ist, wird
           standardmäßig syslog für UDP- und syslog-conn für TCP-Verbindungen verwendet.

       -p, --priority Priorität
           überträgt die Meldung mit der angegebenen Priorität in das Protokoll. Die Priorität
           kann numerisch oder als Einrichtung.Stufe-Paar angegeben werden. Zum Beispiel
           protokolliert -p local3.info die Meldung als informativ in der Einrichtung local3. Die
           Voreinstellung ist user.notice.

       --prio-prefix
           schaut in jeder aus der Standardeingabe gelesenen Zeile nach einem
           Systemprotokoll-Präfix. Dieses Präfix ist eine Dezimalzahl in spitzen Klammern, die
           sowohl Einrichtung als auch Stufe enthält. Für die Ermittlung der Zahl wird die
           Einrichtung mit 8 multipliziert und dann die Stufe addiert. Zum Beispiel wird
           local0.info (was Einrichtung=16 und Stufe=6 bedeutet) zu <134>.

           Falls das Präfix keine Einrichtung enthält,wird standardmäßig die durch die Option -p
           angegebene verwendet. Wenn kein Präfix angegeben ist, wird die Zeile mit der durch -p
           angegebenen Priorität protokolliert.

           Diese Option wirkt sich nicht auf eine Befehlszeilenmeldung aus.

       --rfc3164
           verwendet das BSD-Syslog-Protokoll gemäß RFC 3164
           <https://tools.ietf.org/html/rfc3164> zur Übermitteln von Meldungen an einen fernen
           Server.

       --rfc5424[=ohne]
           verwendet das Syslog-Protokoll gemäß RFC 5424 <https://tools.ietf.org/html/rfc5424>
           zur Übermitteln von Meldungen an einen fernen Server. Das optionale Argument ohne kann
           eine durch Kommata getrennte Liste der folgenden Werte sein: notq, notime, nohost.

           Der Wert notq unterdrückt die Zeit-Qualitäts-strukturierten Daten in der übermittelten
           Meldung. Die Zeitqualitätsinformationen zeigen an, ob die lokale Uhr synchronisiert
           war, sowie die maximale Anzahl an Mikrosekunden, die der Zeitstempel abweichen könnte.
           Die Zeitqualität wird auch automatisch unterdrückt, wenn --sd-id timeQuality angegeben
           wird.

           Der Wert notime (der notq impliziert) unterdrückt den im ISO-8601-Format vorliegenden
           vollständigen Absender-Zeitstempel, einschließlich Mikrosekunden und Zeitzone.

           Der Wert nohost unterdrückt die gethostname(2)-Information aus dem Meldungs-Header.

           Das RFC-5424-Protokoll ist für logger seit Version 2.26 die Vorgabe.

       -s, --stderr
           schreibt die Meldung in die Standardfehlerausgabe und überträgt sie auch in das
           Systemprotokoll.

       --sd-id Name[@Stellen]
           gibt eine strukturierte Datenelement-Kennung für einen Meldungs-Header gemäß RFC 5424
           an. Die Option muss vor --sd-param angegeben werden, um ein neues Element einzuleiten.
           Die Anzahl der strukturierten Datenelemente ist unbegrenzt. Für die Kennung (Name plus
           mögliche @Ziffern) wird die Groß-/Kleinschreibung nicht berücksichtigt. Sie
           identifiziert eindeutig den Typ und Zweck des Elements. Eine Kennung darf nicht
           mehrmals in einer Meldung vorhanden sein. Der @Ziffern-Teil ist für
           benutzerdefinierte, nicht standardisierte Kennungen erforderlich.

           logger erzeugt derzeit nur das standardisierte timeQuality-Element. RFC 5424
           beschreibt auch die Elemente origin (mit den Parametern ip, enterpriseId, software und
           swVersion) und meta (mit den Parametern sequenceId, sysUpTime und language). Diese
           Elementkennungen können ohne das Suffix @Ziffern angegeben werden.

       --sd-param Name=Wert
           gibt einen strukturierten Datenelement-Parameter an, ein Name-Wert-Paar. Die Option
           muss nach --sd-id angegeben werden. Sie darf für das gleiche Element mehrmals
           angegeben werden. Beachten Sie, dass die Anführungszeichen um den Wert erforderlich
           sind und in der Befehlszeile maskiert werden müssen.

                   logger --rfc5424 --sd-id zoo@123             \
                                    --sd-param tiger="hungry"   \
                                    --sd-param zebra="running"  \
                                    --sd-id manager@123         \
                                    --sd-param onMeeting="yes"  \
                                    "this is message"

           erzeugt:

           <13>1 2015-10-01T14:07:59.168662+02:00 ws kzak - - [timeQuality tzKnown="1"
           isSynced="1" syncAccuracy="218616"][zoo@123 tiger="hungry"
           zebra="running"][manager@123 onMeeting="yes"] this is message

       -S, --size Größe
           legt die maximal erlaubte Größe der Meldung fest. Die Vorgabe ist 1KiB an Zeichen,
           welches die in RFC 3164 beschriebene traditionell verwendete Grenze ist. Mit RFC 5424
           wurde diese Grenze flexibler. Eine gute Annahme ist, dass RFC-5424-Empfänger
           mindestens eine 4KiB große Meldung verarbeiten können.

           Die meisten Empfänger akzeptieren Meldungen, die größer als 1KiB sind, über jedes
           Syslog-Übertragungsprotokoll. Daher wird logger in jedem Fall durch die Option --size
           beeinflusst (nicht nur, wenn --rfc5424 angegeben wurde).

           Beachten Sie: Die Begrenzung der Meldungsgröße gilt für die gesamte Meldung
           einschließlich des Systemprotokoll-Headers. Die Größe dieses Headers hängt von den
           gewählten Optionen und der Länge des Hostnamens ab. Als Faustregel gilt, dass Header
           üblicherweise nicht länger als 50 bis 80 Zeichen sind. Wenn Sie die maximale
           Meldungsgröße wählen, müssen Sie sicherstellen, dass der Empfänger diese maximale
           Größe ebenfalls unterstützt, ansonsten könnten Meldungen gekürzt werden. Als
           Faustregel gilt wiederum, dass eine Meldungsgröße von 4 KiB generell funktionieren
           sollte, aber bei größeren Meldungen sollte zuvor geprüft werden, ob es funktioniert.

       --socket-errors[=Modus]
           gibt Fehler zu Unix-Socket-Verbindungen aus. Der Modus kann einer der Werte off, on
           oder auto sein. Im Modus auto erkennt logger, ob systemd der Init-Prozess ist und
           sorgt dafür, dass /dev/log in der frühen Systemstartphase verwendet werden kann.
           Andere Init-Systeme ohne /dev/log verursachen keine Fehler, was identisch zur
           Meldungsbehandlung mit dem Systemaufruf openlog(3) ist. Der Befehl logger(1) hat vor
           Version 2.26 openlog verwendet und war daher nicht in der Lage, an Unix-Sockets
           gesendete und verloren gegangene Meldungen zu erkennen.

           Der Standardmodus ist auto. Wenn Fehler deaktiviert sind, werden verlorene Meldungen
           nicht übertragen, wodurch der Aufruf von logger(1) einen erfolgreichen Rückgabewert
           liefert.

       -T, --tcp
           verwendet nur ein Datenstromprotokoll (TCP). Standardmäßig wird versucht, zum in
           /etc/services definierten Port syslog-conn zu verbinden, welcher oft 601 ist.

           Siehe auch --server und --socket, um anzugeben, wohin verbunden werden soll.

       -t, --tag Markierung
           versieht jede zu protokollierende Zeile mit der angegebenen Markierung. Die
           Standardmarkierung ist der Name des im Terminal angemeldeten Benutzers (oder ein auf
           der effektiven Benutzerkennung basierender Benutzername).

       -u, --socket Socket
           schreibt auf den angegebenen Socket statt auf den Systemprotokoll-Socket.

       --
           beendet die Argumentliste und ermöglicht dadurch, dass die Meldung mit einem
           Bindestrich (-) beginnen kann.

       -h, --help
           zeigt einen Hilfetext an und beendet das Programm.

       -V, --version
           zeigt Versionsinformationen an und beendet das Programm.

EXIT-STATUS

       Das Dienstprogramm logger gibt 0 bei Erfolg und >0 zurück, wenn ein Fehler aufgetreten
       ist.

EINRICHTUNGEN UND STUFEN

       Zulässige Einrichtungsnamen sind:

       auth
       authpriv für Sicherheitsinformationen sensitiver Art
       cron

       daemon
       ftp +
       kern kann nicht aus dem Prozess auf Anwendungsebene generiert werden, wird automatisch in
       user umgewandelt

       lpr
       mail
       news
       syslog
       user
       uucp
       local0
       bis
       local7
       security veraltetes Synonym für auth

       Gültige Stufennamen sind:

       emerg
       alert
       crit
       err
       warning
       notice
       info
       debug
       panic veraltetes Synonym für emerg
       error veraltetes Synonym für err
       warn veraltetes Synonym für warning

       Für die Prioritätsreihenfolge und beabsichtigte Zwecke dieser Einrichtungen und Stufen,
       siehe syslog(3).

KONFORM ZU

       Der Befehl logger sollte zu IEEE Std 1003.2 (»POSIX.2«) kompatibel sein.

BEISPIELE

          logger System rebooted

          logger -p local0.notice -t HOSTIDM -f /dev/idmc

          logger -n loghost.example.com System rebooted

AUTOREN

       Der Befehl logger wurde ursprünglich 1983-1993 durch die Universität von Kalifornien
       geschrieben und später durch Karel Zak <kzak@redhat.com>, Rainer Gerhards
       <rgerhards@adiscon.com> und Sami Kerola <kerolasa@iki.fi> neu geschrieben.

SIEHE AUCH

       journalctl(1), syslog(3), systemd.journal-fields(7)

FEHLER MELDEN

       Nutzen Sie zum Melden von Fehlern das Fehlererfassungssystem auf
       https://github.com/util-linux/util-linux/issues.

VERFÜGBARKEIT

       Der Befehl logger ist Teil des Pakets util-linux, welches aus dem Linux-Kernel-Archiv
       <https://www.kernel.org/pub/linux/utils/util-linux/> heruntergeladen werden kann.