Autor Thema: VDR Log Meldungen aus dem Syslog auslagern  (Gelesen 2987 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline mtron

  • Server-Admin
  • *
  • Beiträge: 1516
    • some debs
VDR Log Meldungen aus dem Syslog auslagern
« am: 21 März, 2013, 08:46 »
VDR Log Meldungen aus dem Syslog auslagern

VDR ist sehr gesprächig. Im log level 2 wird jeder tuning Versuch sowie pid Wechsel protokolliert. Das ist ja grundsätzlich gut und für die Fehlersuche unerlässlich, nur leider wird dabei das syslog sehr unübersichtich und wenn mehrere Dienste am VDR Server arbeiten wird es einfach lästig sich da durchzuwühlen.

Nach folgender Anleitung kann man alle VDR und VDR Plugins Meldungen vom syslog in einen dezitierten VDR Logfile umleiten. Geteste auf ubuntu 16.04 LTS mit VDR Build von Klaus Sources und rsyslog 8.4.2.

- rsyslog Regel erstellen um vdr Log Meldungen umzuleiten:

sudo nano /etc/rsyslog.d/30-vdr.conf
In das leere Editor Fenster folgendes kopieren (danke an user "löwe" aus dem vdr-portal)

# Enhanced VDR log handling. Redirect (and suppress) VDR-messages logged to syslog

## Suppress repeating messages with low relevance
# Messages related to the deactivated VDR-shutdown (on a server)
if $syslogtag startswith 'vdr-shutdown' and $msg contains 'Shutdown deactivated (see /etc/default/vdr)' then stop
if $syslogtag startswith 'vdr' and $msg contains 'executing \'/usr/lib/vdr/vdr-shutdown-message' then stop
if $syslogtag startswith 'vdr' and $msg contains 'saved setup to' then stop

# PID changes
if $syslogtag startswith 'vdr' and $msg contains 'changing pids of channel' then stop


## redirect all remaining VDR related messages to a seperate log file
if $syslogtag startswith 'vdr' then -/var/log/vdr.log
& stop

- Neue VDR Logdatei erstellen

sudo touch /var/log/vdr.log
sudo chmod 640 /var/log/vdr.log

Je nachdem unter welchem user vdr läuft (debian standard ist user und Gruppe vdr) Permissions anpassen
sudo chown vdr:vdr /var/log/vdr.log

- Logrotate für vdr.log erstellen:


sudo nano /etc/logrotate.d/vdr
In das leere Editor Fenster folgendes kopieren:

/var/log/vdr.log
{
rotate 7
daily
missingok
notifempty
delaycompress
compress
        create 644 vdr vdr
        postrotate
                reload rsyslog >/dev/null 2>&1 || true
        endscript
}

Wer daran insteressiert ist was diese Optionen bedeuten kann im ubuntuusers.de wiki weiterlesen.

- rsyslog  Dienst neu starten

sudo service rsyslog restart
logrotate läuft als cronjob und muss also nicht neu gestartet werden. Damit ist das syslog wieder wichtigen Systemmeldungen vorbehalten und VDR mit seinen Plugins kann sich nach Herzenslust im /vdr/log/vdr.log austoben ;)

UPDATES:
- 09.02.2018: im rsyslog.conf die deprecated tilde discard (~) option durch 'stop' ersetzt.
   
« Letzte Änderung: 09 Februar, 2018, 15:15 von mtron »
Signatur
PC: lshw | Sats: 19.2° & 13°Ost (DiSEqC, 80cmØ Blech) | DVB-Soft: vdr 2.1.7 mit softhddevice via va-api
- Hauppauge Nova-T USB 2.0 Stick mit DiBcom DiB7700P Frontend, MT2060 tuner, Firmware
- TerraTec Cinergy S2 PCI HD mit STB0899 demodulator und Mantis VP 1041 PCI bridge
- TerraTec Cinergy S2 USB mit Montage DS3000 demodulator und IR-receiver,  Firmware
[close]