2017-03-24 3 views
0

Ich versuche logback drucken zu konfigurieren: - alles (Level-Trace oder Debug) auf den Bildschirm - alles (Level-Trace oder Debug) zu den debugfile - Warnungen und oben eine FehlerdateiLogback: getrennte Protokollierung WARN/TRACE

Meine logback.xml Config ist wie folgt aus:

... 
<logger name="be" level="TRACE"> 
    <appender-ref ref="FILE-AUDIT" /> 
    <appender-ref ref="STDOUT" /> 
</logger> 

<root level="WARN"> 
    <appender-ref ref="FILE-ERROR" /> 
</root> 

jedoch die Fehler und Debug-Datei enthalten genau das gleiche, alle Logging (Debug und Fehler) zu sein. Ich habe bereits versucht, mit der Additivitätsoption zu spielen, aber das ist anscheinend nicht das, was ich brauche.

Die zweite Frage ist, dass ich den Namen "be" benutze, um alle Klassen darunter zu haben. * Aber eigentlich möchte ich alles dort erfassen (auch com. *).

+1

off topic: Ugh, tun Sie das nicht. Sie müssen drei separate Dateien geöffnet haben, um herauszufinden, was vor sich geht. Und wenn es auf einem Remotecomputer ausgeführt wird, laden Sie entweder drei Dateien separat herunter oder haben drei Terminals geöffnet. Und es wird noch schlimmer, wenn Sie Ihre Logfiles täglich rollen und Sie herausfinden müssen, was um Mitternacht vor sich geht. – slowy

Antwort

0

eine Lösung gefunden, durch einen Filter auf die appender Zugabe:

<appender name="FILE-ERROR" 
    class="ch.qos.logback.core.rolling.RollingFileAppender"> 
     <!-- deny all events with a level below WARNING --> 
     <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> 
      <level>WARN</level> 
     </filter> 
Verwandte Themen