Hallo,
mein VDR-Client startet automatisch aus /etc/init.d/vdr mit --terminal=/dev/tty1. Die Eingabe kommt dann von der Tastatur, die Ausgabe verschwindet leider im Nirvana von /dev/tty1, welches ich nicht sehen kann (kein Monitor angeschlossen).
Ich würde die Ausgabe gerne in einem Logfile protokolieren. Wie geht das?
Gruß, Matthias
Logfile trotz --terminal
- hubermat
- Geschlossen
-
-
Hi,
du kannst die Ausgabe mit dem > umleiten (Datei wird neu erstellt) bzw. mit >> anhängen.
Beispiel: cat /etc/passwd > passwortdatei.txtMike
-
Wenn du mit > umleitest, dann geht nur STDOUT dorthin, Fehler kommen aber auf STDERR, die kannst du mit 2> umleuten.
vdr > logdatei 2>&
dann leitest du sowohl STDOUT als auch STDERR in die Datei. -
Okay,
in eine Datei umleiten kann wohl so ziemlich jeder. Das Problem ist aber ein wenig komplizierter.
In meiner /etc/init.d/vdr steht folgender Aufruf drin:
In den $(vdropts) ist dann --terminal=/dev/tty1 enthalten.
Leider tut sich in /var/log/vdr überhaupt nichts. Kann das damit zusammen hängen, daß die --terminal Option die Ausgabe so nach /dev/tty1 umbiegt (intern), daß über stdout gar nichts mehr rauskommt? Dann würde nämlich auch eine Ausgabeumleitung reichlich wenig bringen
Gibt es etwa keine Möglichkeit, die --terminal Option zu verwenden und trotzdem ein Logfile zu bekommen ?!?
Gruß, Matthias -
Wollte bei meinem VDR auch die Ausgabe in ein Logfile umleiten. Habe dazu aber nichts hier in diesem Thread gefunden. Daher schreibe ich hier mal wie ich es bei mir implementiert habe.
Auf meinem SuSE 9.0 wird auf tty10 vom kernel und vdr geschrieben.
Das kernel module auf tty10 schreiben wird definiert in der /etc/syslog.conf
Hier findet sich die Zeile "kern.warning;*.err;authpriv.none /dev/tty10" die dies bewirkt.Also kann man diese Informationen mittels "kern.warning;*.err;authpriv.none /var/log/vdr.log" in die Datei vdr.log wegschreiben.
Ferner hat man beim vdr die log option:
"vdr -l LEVEL, -- log=LEVEL set log level (default: 3)"
Dabei kann man das logging statt nach LOG_USER nach LOG_LOCALn umleiten indem man nach dem LEVEL noch '.n' angibt.Somit kann man vdr z.B. mit "vdr -l 3.0" starten, wobei loglevel 3 aktiviert ist und das logging an LOG_LOCAL0 geschickt wird.
Nun kann man in der /etc/syslog.conf die Informationen von LOG_LOCALn abgreifen und umlenken.
Dies geschieht durch hinzufügen von "local0.*;kern.warning;*.err;authpriv.none /var/log/vdr.log"Damit werden zusätzlich zu den kernel messages auch die LOG_LOCAL0 Informationen nach vdr.log geschrieben.
Hoffe das hilft jemanden.
Bye
John
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!