[solved] VDR/systemd/journald: Alle Meldungen sind in rot als wären es Fehler

  • Hi *,


    ich habe in den letzten Tagen einen Parforceritt durch systemd absolviert und alle meine Systeme auf openSuSE 12.3 aktualisiert.
    Klappt soweit auch alles ziemlich gut - wenn auch teilweise unbefriedigend, was systemd anbelangt.
    Eine Frage ist aber offen geblieben:
    Ich bin ein "Sauberkeitsfanatiker", was Fehlermeldungen anbelangt - ich will möglichst keine Fehler oder Warnungen haben, die man ignorieren kann.
    Hauptgrund: Man übersieht in der Menge gerne mal die echten Fehler.
    Daher stört mich ungemein, dass alle Meldungen des VDR und seiner Plugins in rot im Journal angezeigt werden, als wären es Fehler.
    Und mit *alle* meine ich auch wirklich alle - vom Laden bis hin zu jeder Status- oder Configänderung.


    Kann man das ändern? Wäre wirklich toll!


    Thx und ciao.
    Michael.

    Einmal editiert, zuletzt von nobanzai ()

  • Moin!


    Siehe tools.h:

    Code
    #define esyslog(a...) void( (SysLogLevel > 0) ? syslog_with_tid(LOG_ERR, a) : void() )
    #define isyslog(a...) void( (SysLogLevel > 1) ? syslog_with_tid(LOG_ERR, a) : void() )
    #define dsyslog(a...) void( (SysLogLevel > 2) ? syslog_with_tid(LOG_ERR, a) : void() )


    Der vdr gibt immer "Fehlermeldungen" aus.


    Lars.

  • Es kann ja mal jemand einen Patch fertig machen, vielleicht hat Klaus ja Lust, bei isyslog und dsyslog entsprechend LOG_INFO und LOG_DEBUG zu benutzen.
    Ich hab aber nur schnell nach vsyslog gegooglet, keine Ahnung, wie das dann nachher im syslog aussieht.


    Lars.

  • Ich teste das gleich mal.


    Edit: Klappt wunderbar. Pluginmeldungen werden aber immernoch rot geschrieben.


    Edit2: Ich denke mal, dass die tools.h auch von den Plugins benutzt wird. Da ich kein Plugin neukompiliert habe wird das wohl immernoch falsch gesendet.

  • Hi,


    Moin!


    Siehe tools.h:

    Code
    #define esyslog(a...) void( (SysLogLevel > 0) ? syslog_with_tid(LOG_ERR, a) : void() )
    #define isyslog(a...) void( (SysLogLevel > 1) ? syslog_with_tid(LOG_ERR, a) : void() )
    #define dsyslog(a...) void( (SysLogLevel > 2) ? syslog_with_tid(LOG_ERR, a) : void() )


    Der vdr gibt immer "Fehlermeldungen" aus.


    ach da drin steht das 8-<
    Irgendwie hab ich völlig falsch gesucht.


    Danke!


    Lars.


    Ciao.
    Michael.

  • Zu Edit2: Ja, das denke ich auch.


    Und manche Plugins benutzen auch esyslog für Statusmeldungen...


    Also generell klappt es, wenn man alles durchübersetzt - mit Ausnahme einiger Renitenzlinge wie live oder xmltv,
    die - wie du schon geschrieben hast - auch Statusmeldungen als Fehler auswerfen.


    Lars.


    Ciao.
    Michael.

  • Kein Problem, bei so einem einfachen Patch streite ich mich nicht um die Urheberschaft. :)


    Schickst du ihn auch an die vdr-ML? Dann findet man den leichter.


    Lars.

  • Wenn manche syslogs das separieren, dann ist das deren Problem, oder nicht?
    Ich kann Klaus da zwar verstehen, dass er die Meldungen gerne beisammen hat, aber schön ist es nicht. Aber geht es nicht genau darum, die Meldungen zu splitten, damit die wirklich wichtigen (ERR) nicht untergehen?


    Vielleicht lässt er sich dazu überreden, einen Schalter einzubauen, damit alle Meldungen bei einer Fehlersuche auf der Konsole statt ins syslog ausgegeben werden?
    Oder sollte man die Option LOG_LOCALn mal genauer erklären? Ich selbst weiß da auch nicht so viel drüber, muss ich gestehen... Ließe sich die benutzen, um die verschiedenen Stufen wieder zusammen zu führen?


    Lars.

  • Wenn es für Michael gelöst ist (weil er mit einem Patch leben kann), ist das schon ok.
    Trotzdem wäre ein Kommentar von Klaus natürlich noch schön.


    Lars.

  • Warum ist der Thread als Solved markiert? Solved ist das erst, wenn Klaus etwas dazu gesagt hat.


    Naja, nicht wirklich.
    Ich hatte den aufgemacht und für mich ist er mit dem Minipatch :) eben solved.


    Ciao.
    Michael.

  • Aus der HISTORY:


    Code
    2007-08-12: Version 1.5.7
    
    
    - All logging now goes to LOG_ERR, because some systems split error, info and
      debug messages into separate files, which repeatedly caused extra efforts to
      find out when incomplete log excerpts were attached to problem reports in
      the past.


    Es hat immer wieder extra Aufwand verursacht, wenn jemand bei einem Problem ein Log geschickt hat, in dem nicht alle Informationen enthalten waren. Und selbst wenn alle drei Dateien geschickt wurden, musste man erst mühsam die zeitliche Korrelation wieder herstellen. Da ist es wesentlich einfacher, wenn alles in *einer* Datei steht. Deshalb wurde das vor nunmehr fast 6 Jahren so geändet.


    Klaus

  • Meiner Ansicht nach sollte sowas zumindest konfigurierbar sein. Bei systemd landet alles in einem Log (freudlicherweise wird da sogar direkt alles mit eingemischt, was auf STDOUT und STDERR landet), wird aber verschieden gefärbt und kann ggf. auch sortiert/gefiltert werden.


    Wenn du auch gegen eine Konfiguration (z.B. via Befehlszeilen-Schalter) bist, dann bitte nochmal hier melden. Betroffene Distributionen müssen dann leider mit dem Patch von Copperhead leben um ihr Log sauber zu bekommen.

  • Hat mir auch 2007 schon nicht gefallen ;) - neben besagtem Patch wären Patche für verschiedene Plugins sicher auch nett, die entweder verkehrt loggen oder auf STDOUT ausgeben. Dürfte auch allen Distris zugute kommen wenn man sich das gemeinsam anschaut.

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

  • Da ist es wesentlich einfacher, wenn alles in *einer* Datei steht. Deshalb wurde das vor nunmehr fast 6 Jahren so geändet.


    Entschuldigung, aber dann ist es seit nunmehr fast 6 Jahren falsch. Das sollte an dem syslog daemon gefixt werden. Ich bin in Archlinux seit einiger Zeit journalctl von systemd gewohnt. Davor habe ich aber zeitweise syslog-ng und rsyslog verwendet und bei beiden ist es problemlos möglich alle Logmeldungen des VDR in eine eigene Datei umzuleiten.


    @Mreimer: Du immer und deine Befehlszeilenschalter. Der Fehler ist so grundlegend, dass das nicht per Kommandozeile verstellbar sein sollte. Mal davon abgesehen, dass das nicht möglich ist. Plugins würden es immernoch falsch machen, weil diese tools.h includen und dieses Verhalten fest einkompilieren.


  • @Mreimer: Du immer und deine Befehlszeilenschalter. Der Fehler ist so grundlegend, dass das nicht per Kommandozeile verstellbar sein sollte. Mal davon abgesehen, dass das nicht möglich ist. Plugins würden es immernoch falsch machen, weil diese tools.h includen und dieses Verhalten fest einkompilieren.


    Besser ein Befehlszeilen-Schalter als ein Patch! Klar wäre es noch besser, wenn der Patch in den VDR wandert, aber ich habe aus dem Unterton herausgehört, dass der aktuelle Stand so bleiben soll. In wiefern man die tools.h so umbauen kann, dass Plugins ihre Log-Wünsche zum VDR hin kommunizieren und somit ein Schalter wirken könnte, wäre noch zu ergründen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!