2009-04-15 5 views

Antwort

5

Das ist definitiv möglich. Die Konfiguration würde wie folgt aussehen (nicht auf syntaktische Korrektheit geprüft):

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 
    <appender name="console" class="org.apache.log4j.ConsoleAppender"> 
     ... 
    </appender> 

    <appender name="otherAppender" 
       class="org.apache.log4j.FileAppender FileAppender"> 
     ... 
    </appender> 

    <logger name="com.mycompany.mypackage.MyClass"> 
     <level  value="info"/> 
     <appender-ref ref="otherAppender" /> 
    </logger> 

    <root> 
     <priority  value="debug" /> 
     <appender-ref ref="console" /> 
    </root> 
</log4j:configuration> 

Alle Debug-und Info-Nachrichten an die console appender gehen. Info-Nachrichten gehen zu otherAppender.

+0

Ich habe ein paar kleine Änderungen an Ihrer Antwort vorgenommen. hoffe das ist OK. – Eddie

+0

Das ist in Ordnung :) Danke! –

1

Gehen Sie auf this Seite für einige Beispiele.

Es ist so einfach wie das Hinzufügen von zwei verschiedenen Appender zu Ihrem Programm, ein Appender für jede Art von Protokollierung, die Sie tun möchten.

0

Mit der Konfiguration von Eddie kann ich nur die "info" Ausgabe für MyClass bekommen. Aber was ich gerne hätte, ist, dass die "info" -Ausgabe von MyClass in eine Datei geht und die "Debug" -Ausgabe von MyClass zur Konsole geht.

0

Sie als rwwilden vorgeschlagen, aber diesen Teil entfernen:

<logger name="com.mycompany.mypackage.MyClass"> 
    <level value="info"/> 
    <appender-ref ref="otherAppender" /> 
</logger> 

Und <param name="Threshold" value="INFO"/> unter dem otherAppender hinzuzufügen.

10

Ok, ich habe es jetzt habe:

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 
    <appender name="console" class="org.apache.log4j.ConsoleAppender"> 
     ... 
    </appender> 

    <appender name="otherAppender" 
       class="org.apache.log4j.FileAppender FileAppender"> 
     <param name="Threshold" value="INFO"/> 
     ... 
    </appender> 

    <root> 
     <priority  value="debug" /> 
     <appender-ref ref="console" /> 
     <appender-ref ref="otherAppender" /> 
    </root> 
</log4j:configuration> 

Vielen Dank für Ihre Hilfe!

Verwandte Themen