oracular (3) syslog.3.gz

Provided by: manpages-de-dev_4.23.1-1_all bug

BEZEICHNUNG

       closelog, openlog, syslog, vsyslog - verschickt Nachrichten an die Systemprotokollierung

BIBLIOTHEK

       Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

       #include <syslog.h>

       void openlog(const char *ident, int option, int einrichtung);
       void syslog(int priorität, const char *format, …);
       void closelog(void);

       void vsyslog(int priorität, const char *format, va_list ap);

   Mit Glibc erforderliche Feature-Test-Makros (siehe feature_test_macros(7)):

       vsyslog():
           Seit Glibc 2.19:
               _DEFAULT_SOURCE
           Glibc 2.19 und älter:
               _BSD_SOURCE

BESCHREIBUNG

   openlog()
       openlog() öffnet für ein Programm eine Verbindung zum Syslog-Daemon.

       Die  Zeichenkette  ident  wird jeder Nachricht vorangestellt und wird üblicherweise auf den Programmnamen
       gesetzt. Falls ident gleich  NULL  ist,  wird  der  Programmname  benutzt.  (POSIX.1-2008  enthält  keine
       Spezifikation für den Fall, dass ident gleich NULL ist)

       Der option-Parameter definiert Schalter, welche die Ausführung von Openlog und darauffolgende Aufrufe von
       syslog() steuern. Der einrichtung-Parameter definiert einen Standardwert, welcher benutzt wird, falls  in
       darauffolgenden  syslog()-Aufrufen  nichts  spezifiziert wurde. Die Werte, die für option und einrichtung
       angegeben werden dürfen, werden weiter unten beschrieben.

       Die Benutzung von openlog() ist optional;  gegebenenfalls  wird  die  Routine  automatisch  von  syslog()
       aufgerufen, wenn es nötig ist, dann wird ident auf NULL gesetzt.

   syslog() und vsyslog()
       syslog() erzeugt eine Protokoll-Nachricht, die vom syslogd(8) verteilt wird.

       Der  Parameter  priorität ist das Ergebnis einer ODER-Verknüpfung eines Werts einrichtung und eines Werts
       level (weiter unten beschrieben). Falls kein Wert einrichtung mit  priorität  ODER-verknüpft  wird,  dann
       wird  der  durch  openlog()  gesetzte  Vorgabewert  verwandt, oder, falls es keinen vorhergehenden Aufruf
       openlog() gab, die Vorgabe LOG_USER verwandt.

       Die verbleibenden Parameter sind format, wie bei printf(3) und weitere Parameter, die von format benötigt
       werden. Allerdings wird die Zwei-Zeichen-Folge %m durch die Fehlermeldung strerror(errno) ersetzt werden.
       Die Formatzeichenkette muss kein abschließendes Zeilenumbruchzeichen enthalten.

       Die Funktion vsyslog() führt die gleiche Aufgabe aus wie syslog(), mit dem  Unterschied,  dass  sie  eine
       Liste an Parametern erhält, die mit Makros aus der stdarg(3)-Variablenliste abgefragt werden.

   closelog()
       closelog()  schließt  den Dateideskriptor, der zum Schreiben der Protokoll-Nachrichten benutzt wurde. Die
       Benutzung von closelog() ist optional.

   Werte für option
       Der Parameter option von openlog() ist eine Bitmaske, die durch ODER-Verknüpfung beliebiger der folgenden
       Werte erstellt wird:

       LOG_CONS       schreibt   direkt   auf  die  Systemkonsole,  falls  ein  Fehler  beim  Schreiben  an  die
                      Systemprotokollierung auftritt.

       LOG_NDELAY     öffnet die Verbindung sofort (normalerweise wird die Verbindung geöffnet, wenn  die  erste
                      Nachricht  protokolliert  wird).  Dies  kann  zum  Beispiel nützlich sein, falls durch ein
                      nachfolgendes  chroot(2)  die  intern  von  der   Protokollierungseinrichtung   verwandten
                      Pfadnamen unerreichbar werden würden.

       LOG_NOWAIT     wartet  nicht auf Kindprozesse, welche eventuell beim Protokollieren der Nachricht erzeugt
                      wurden. (Die GNU-C-Bibliothek erzeugt keine Kindprozesse, insofern hat diese Option  keine
                      Auswirkung unter Linux.)

       LOG_ODELAY     das  Gegenteil  von LOG_NDELAY; das Öffnen der Verbindung wird bis zum Aufruf von syslog()
                      verzögert. (Das ist das Standardverhalten und muss nicht angegeben werden.)

       LOG_PERROR     (nicht in POSIX.1-2001 oder POSIX.1-2008) die Nachricht auch nach stderr protokollieren.

       LOG_PID        füge die PID des Aufrufenden in jede Nachricht ein.

   Werte für einrichtung
       Der Parameter einrichtung wird benutzt, um anzugeben, welcher Programmtyp  die  Nachricht  protokolliert.
       Dadurch   kann   mit   der   Konfigurationsdatei   syslog.conf  erreicht  werden,  dass  Nachrichten  von
       unterschiedlichen Einrichtungen auch unterschiedlich behandelt werden.

       LOG_AUTH       Sicherheits-/Autorisations-Nachrichten

       LOG_AUTHPRIV   Sicherheits-/Autorisations-Nachrichten (privat)

       LOG_CRON       Uhr-Daemon (cron und at)

       LOG_DAEMON     System-Daemonen ohne spezielle Einrichtungswerte

       LOG_FTP        FTP-Daemon

       LOG_KERN       Kernel-Nachrichten (diese können nicht von Benutzerprozessen erzeugt werden)

       LOG_LOCAL0 bis LOG_LOCAL7
                      reserviert für den lokalen Gebrauch

       LOG_LPR        Zeilendrucker-Untersystem

       LOG_MAIL       Mail-Subsystem

       LOG_NEWS       Usenet Nachrichten-Untersystem

       LOG_SYSLOG     Nachrichten, die intern vom syslogd(8) erzeugt wurden

       LOG_USER (Standardwert)
                      generische Nachrichten auf Anwenderebene

       LOG_UUCP       UUCP-Subsystem

   Werte für level
       Dieser Parameter gibt  die  Dringlichkeitsstufe  der  Nachricht  an.  Die  Stufen  sind  in  absteigender
       Wichtigkeit:

       LOG_EMERG      Das System ist unbrauchbar.

       LOG_ALERT      Es muss sofort gehandelt werden.

       LOG_CRIT       kritische Bedingungen

       LOG_ERR        Fehlerbedingungen

       LOG_WARNING    Warnungsbedingungen

       LOG_NOTICE     normale, aber bedeutende Bedingung

       LOG_INFO       Information

       LOG_DEBUG      Debuginformation

       Die  Funktion  setlogmask(3)  kann  dazu  benutzt  werden,  um  das  Protokollieren  auf  bestimmte Level
       einzuschränken.

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

       ┌─────────────────────────────────────────────────────────┬───────────────────────┬──────────────────────┐
       │SchnittstelleAttributWert                 │
       ├─────────────────────────────────────────────────────────┼───────────────────────┼──────────────────────┤
       │openlog(), closelog()                                    │ Multithread-Fähigkeit │ MT-Sicher            │
       ├─────────────────────────────────────────────────────────┼───────────────────────┼──────────────────────┤
       │syslog(), vsyslog()                                      │ Multithread-Fähigkeit │ MT-Sicher env locale │
       └─────────────────────────────────────────────────────────┴───────────────────────┴──────────────────────┘

STANDARDS

       syslog()
       openlog()
       closelog()
              POSIX.1-2008.

       vsyslog()
              Keine.

GESCHICHTE

       syslog()
              4.2BSD, SUSv2, POSIX.1-2001.

       openlog()
       closelog()
              4.3BSD, SUSv2, POSIX.1-2001.

       vsyslog()
              4.3BSD-Reno.

       POSIX.1-2001 spezifiert  nur  die  Werte  LOG_USER  und  LOG_LOCAL*  für  einrichtung.  Auf  den  meisten
       UNIX-Systemen  gibt es jedoch auch die anderen einrichtung-Optionen mit der Ausnahme von LOG_AUTHPRIV und
       LOG_FTP.

       Der Wert LOG_PERROR für den Parameter option ist in POSIX.1-2001 oder POSIX.1-2008 nicht spezifiert, aber
       auf den meisten UNIX-Versionen verfügbar.

ANMERKUNGEN

       Das  Argument  ident  im  Aufruf  von  openlog()  wird wahrscheinlich unverändert gespeichert. Falls sich
       demnach die Zeichenkette, auf die sich ident bezieht, ändert, kann syslog()  die  geänderte  Zeichenkette
       voranstellen.  Falls  die  Zeichenkette  nicht  mehr  gefunden werden kann, ergibt dies ein undefiniertes
       Ergebnis. Die portabelste Lösung ist die Verwendung einer konstanten Zeichenkette.

       Übergeben Sie niemals eine Zeichenkette, die Daten von  Benutzeriengaben  enthält,  als  Format,  sondern
       benutzen Sie das Folgende:

           syslog(priority, "%s", string);

SIEHE AUCH

       journalctl(1), logger(1), setlogmask(3), syslog.conf(5), syslogd(8)

ÜBERSETZUNG

       Die  deutsche Übersetzung dieser Handbuchseite wurde von Gerd Koenig <koenig.bodensee@googlemail.com> und
       Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

       Diese Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die  GNU  General  Public  License  Version  3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE
       HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte  eine  E-Mail  an  die
       Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.