Ubuntu Syslog

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

Auf Linux Systemen befinden sich im Verzeichnis /var/log mehrere Logdateien, z.B. /var/log/syslog. In diesem Artikel zeigen wir am konkreten Beispiel eines Ubuntu 16.04 Systems, welche Logdateien konkret vom rsyslogd Dienst erstellt werden und wie die Konfiguration des rsyslogd funktioniert.

rsyslogd Konfiguration

Der rsyslogd Dienst wird über folgende Konfigurationsdateien eingerichtet:

  • /etc/rsyslog.conf
  • Dateien in /etc/rsyslog.d/, z.B:
    • 50-default.conf

In der Datei /etc/rsyslog.d/50-default.conf sind die wichtigsten Standardkonfigurationen enthalten. Die einzelnen Einträge beginnen dabei in jeder Zeile mit facility.priority.[1] Mehrere Facilities bzw. Priorities können über Komma (,) getrennt angeführt werden. Außerdem können mehrere Einträge der Form facility.priority über Strichpunkt (;) getrennt ergänzt werden. Damit können z.B. bestimmte Meldungen ausgefiltert werden (siehe #syslog weiter unten).

Facility

Facility ist dabei eines der folgenden Schlüsselwörter:

auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, security (Synonym für auth), syslog, user, uucp und local0 bis local7.

Das Schlüsselwort security soll jedoch nicht mehr verwendet werden und ist nur für interne rsyslogd Zwecke gedacht. Die Facility gibt also die Quelle einer Meldung an. Beispielsweise loggen alle E-Mail-Server-Dienste unter der Facility mail. Ein Asterisk (*) steht für alle Facilities.

Priority

Priority ist eines der folgenden Schlüsselwörter (in aufsteigender Reihenfolge):

debug, info, notice, warning, warn (Synonym für warning), err, error (Synonym für err), crit, alert, emerg, panic (Synonym für emerg).

Die Schlüsselwörter error, warn und panic sollen jedoch nicht mehr verwendet werden. Die Priority definiert den Schweregrad der Meldung. Ein Asterisk (*) steht für alle Priorities. Das Schlüsselwort none steht für keine Priority der angeführten Facility.

Bestimmte Meldungen separat filtern

Möchte man bestimmte Meldungen separat filtern, kann dies einfach mit einer "& ~" Zeile gelöst werden. Ein Beispiel dazu liefert /etc/rsyslog.d/20-ufw.conf:

# Log kernel generated UFW log messages to file
:msg,contains,"[UFW " /var/log/ufw.log

# Uncomment the following to stop logging anything that matches the last rule.
# Doing this will stop logging kernel generated UFW log messages to the file
# normally containing kern.* messages (eg, /var/log/kern.log)
#& ~

Möchte man z.B. netfilter Meldungen nicht in /var/log/syslog, sondern in einer eigenen Datei /var/log/iptables.log haben, erstellt man dazu einfach beispielsweise eine Datei mit dem Namen /etc/rsyslog.d/20-iptables.conf und lädt anschließend die rsyslogd Konfiguration neu:

:msg,contains,"netfilter - dropped " /var/log/iptables.log
& ~

Logdateien in /var/log

auth.log

Konfiguration:

auth,authpriv.*                 /var/log/auth.log

Zweck: Loggt alle Meldungen im Bereich Authentifizierung.

kern.log

Konfiguration:

kern.*                          -/var/log/kern.log

Zweck: Loggt alle Meldungen des Linux Kernels.

mail.log

Konfiguration:

mail.*                          -/var/log/mail.log

Zweck: Loggt Meldungen des Mailservers.

syslog

Konfiguration:

*.*;auth,authpriv.none          -/var/log/syslog

Zweck: In dieser Logdatei finden sich alle Meldungen mit Außnahme von Meldungen der auth oder authpriv Facilities. Diese Datei eignet sich daher gut zur Analyse von vielen Problemen.

Beispiel einer /var/log/syslog Datei

Das folgende Beispiel zeigt die Einträge in /var/log/syslog nach dem Starten eines Ubuntu 16.04 Systems sowie weiter unten die Einträge, die beim Anschluss eines USB-Sticks entstehen:

Oct 25 13:16:38 wtp rsyslogd: [origin software="rsyslogd" swVersion="8.16.0" x-pid="889" x-info="http://www.rsyslog.com"] start
Oct 25 13:16:38 wtp rsyslogd-2222: command 'KLogPermitNonKernelFacility' is currently not permitted - did you already set it via a RainerScript command (v6+ config)? [
v8.16.0 try http://www.rsyslog.com/e/2222 ]
Oct 25 13:16:38 wtp rsyslogd: rsyslogd's groupid changed to 108
Oct 25 13:16:38 wtp rsyslogd: rsyslogd's userid changed to 104
Oct 25 13:16:38 wtp kernel: [    0.000000] microcode: CPU0 microcode updated early to revision 0x1c, date = 2015-02-26
Oct 25 13:16:38 wtp kernel: [    0.000000] Initializing cgroup subsys cpuset
Oct 25 13:16:38 wtp kernel: [    0.000000] Initializing cgroup subsys cpu
Oct 25 13:16:38 wtp kernel: [    0.000000] Initializing cgroup subsys cpuacct
Oct 25 13:16:38 wtp kernel: [    0.000000] Linux version 4.4.0-38-generic (buildd@lgw01-58) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.2) ) #57-Ubuntu SM
P Tue Sep 6 15:42:33 UTC 2016 (Ubuntu 4.4.0-38.57-generic 4.4.19)
Oct 25 13:16:38 wtp kernel: [    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.4.0-38-generic root=UUID=df14494b-8a88-4de4-9558-79950de0ea86 ro quiet splash vt.ha
ndoff=7
Oct 25 13:16:38 wtp kernel: [    0.000000] KERNEL supported cpus:
Oct 25 13:16:38 wtp kernel: [    0.000000]   Intel GenuineIntel
Oct 25 13:16:38 wtp kernel: [    0.000000]   AMD AuthenticAMD
Oct 25 13:16:38 wtp kernel: [    0.000000]   Centaur CentaurHauls
Oct 25 13:16:38 wtp kernel: [    0.000000] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
[...]
Oct 25 13:28:52 wtp kernel: [  718.258171] usb 3-2: new high-speed USB device number 2 using xhci_hcd
Oct 25 13:28:52 wtp kernel: [  718.530477] usb 3-2: New USB device found, idVendor=058f, idProduct=6387
Oct 25 13:28:52 wtp kernel: [  718.530485] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Oct 25 13:28:52 wtp kernel: [  718.530489] usb 3-2: Product: Mass Storage
Oct 25 13:28:52 wtp kernel: [  718.530492] usb 3-2: Manufacturer: USB
Oct 25 13:28:52 wtp kernel: [  718.530494] usb 3-2: SerialNumber: 0CE9FBFF
Oct 25 13:28:52 wtp mtp-probe: checking bus 3, device 2: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-2"
Oct 25 13:28:52 wtp mtp-probe: bus: 3, device: 2 was not an MTP device
Oct 25 13:28:52 wtp kernel: [  718.552158] usb-storage 3-2:1.0: USB Mass Storage device detected
Oct 25 13:28:52 wtp kernel: [  718.552971] scsi host6: usb-storage 3-2:1.0
Oct 25 13:28:52 wtp kernel: [  718.553729] usbcore: registered new interface driver usb-storage
Oct 25 13:28:52 wtp kernel: [  718.558481] usbcore: registered new interface driver uas
Oct 25 13:28:53 wtp kernel: [  719.552271] scsi 6:0:0:0: Direct-Access     USB      USB 2.0 Flash    8.07 PQ: 0 ANSI: 2
Oct 25 13:28:53 wtp kernel: [  719.553231] sd 6:0:0:0: Attached scsi generic sg1 type 0
Oct 25 13:28:53 wtp kernel: [  719.554655] sd 6:0:0:0: [sdb] 3952640 512-byte logical blocks: (2.02 GB/1.88 GiB)
Oct 25 13:28:53 wtp kernel: [  719.554855] sd 6:0:0:0: [sdb] Write Protect is off
Oct 25 13:28:53 wtp kernel: [  719.554864] sd 6:0:0:0: [sdb] Mode Sense: 03 00 00 00
Oct 25 13:28:53 wtp kernel: [  719.555033] sd 6:0:0:0: [sdb] No Caching mode page found
Oct 25 13:28:53 wtp kernel: [  719.555041] sd 6:0:0:0: [sdb] Assuming drive cache: write through
Oct 25 13:28:54 wtp kernel: [  719.935411]  sdb: sdb1
Oct 25 13:28:54 wtp kernel: [  719.936965] sd 6:0:0:0: [sdb] Attached SCSI removable disk
Oct 25 13:28:54 wtp udisksd[2158]: Mounted /dev/sdb1 at /media/wfischer/F8B5-F1DF on behalf of uid 1000

Weitere Informationen

Einzelnachweise

  1. rsyslog.conf Manpage (manpages.ubuntu.com, Manpage von rsyslog.conf von Ubuntu 16.04 Xenial)


Foto Werner Fischer.jpg

Autor: Werner Fischer

Werner Fischer arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 - ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg - heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.


Das könnte Sie auch interessieren

Ubuntu
Ubuntu LTS Hardware Enablement Stack
Vtop unter Ubuntu installieren und konfigurieren