2016-04-12 6 views
2

Ich möchte nur INFO Protokolle an den logfile schreiben, ist unten meine log4j KonfigurationWie schreibe ich nur INFO loggt in der Log-Datei log4j ein?

log4j.properties Datei:

log4j.rootLogger = INFO, FILE, 
log4j.appender.FILE=org.apache.log4j.RollingFileAppender 
log4j.appender.FILE.File=logs.out 
log4j.appender.FILE.ImmediateFlush=true 
log4j.appender.FILE.Threshold=INFO 
log4j.appender.FILE.Append=true 
log4j.appender.FILE.MaxFileSize=100KB 
log4j.appender.FILE.MaxBackupIndex=2 
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout 
log4j.appender.FILE.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss} %5p - %m%n 

Java-Datei:

import org.apache.log4j.Logger; 

public class Log4jDemo { 

    private static Logger log=Logger.getLogger(Logger.class.getName()); 

    public static void main(String[] args) { 
     log.info("info"); 
     log.error("error"); 
     log.fatal("fatal"); 
     log.warn("warn"); 
    } 
} 

logs.out Datei:

12 Apr 2016 15:38:35 INFO - info 
12 Apr 2016 15:38:35 ERROR - error 
12 Apr 2016 15:38:35 FATAL - fatal 
12 Apr 2016 15:38:35 WARN - warn 

Hier bekomme ich Protokolle logs.out Datei sind INFO, ERROR, FATAL, WARN, aber ich möchte nur INFO Protokolle zu logs.out Datei schreiben?

Wer bitte schlagen Sie vor, wie Sie dieses Ziel erreichen?

meine Frage ist einzigartig, es geht nicht um log4j Logging-Hierarchie umlog4j logging hierarchy order

dies zeigt die Standardkonfiguration von log4j Rahmen, aber ich möchte den Brauch ein, implementieren, können Sie mir bitte helfen, das zu lösen Problem.

+0

Sie wollen also nicht ERROR, FATAL oder WARN sehen, noch wann sie aufgetreten sind? –

+1

Mögliches Duplikat von [log4j Protokollierungshierarchie-Reihenfolge] (http://stackoverflow.com/questions/7745885/log4j-logging-hierarchy-order) – Sanjeev

+0

rechts, @PeterLawrey –

Antwort

2

Ich habe gerade die Filter Sie suchen: org.apache.log4j.varia.LevelMatchFilter

ABER.

„, dass die Filterung Hinweis nur durch die DOMConfigurator unterstützt wird Die PropertyConfigurator nicht Filter unterstützen "

(Quelle: https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/spi/Filter.html).

Sie werden wahrscheinlich in die XML-Konfigurationsdatei wechseln müssen.

Für Log4j2 gibt es ThresholdFilter wie bereits in den Kommentaren erwähnt.