2017-05-16 3 views
1

Wie ich gerade log4j lernen, ist dieses Projekt nur eine log4j-Demo zum Drucken von Protokollinformationen. Und möchte das Konsolenprotokoll und Dateiprotokoll mit verschiedenen Informationen drucken. Das sollte nicht schwierig sein, aber ich weiß nicht, warum es gescheitert ist.Warum Log4j-Konsole das gleiche Ergebnis wie Datei

Ich hoffe, Sie können mir helfen, es herauszufinden. Vielen Dank.

Dies ist die log4j.properties:

# Define the root logger with appender file 
log4j.rootLogger = DEBUG, console, file 

# Define the console appender 
log4j.appender.console = org.apache.log4j.ConsoleAppender 
log4j.appender.console.Threshold = DEBUG 
log4j.appender.console.Target = System.out 
log4j.appender.console.layout = org.apache.log4j.PatternLayout 
log4j.appender.console.layput.conversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS} %-5p -%C- - %m%n 

## Define the file appender 
log4j.appender.file = org.apache.log4j.FileAppender 
log4j.appender.file.Threshold = INFO 
log4j.appender.file.File = ./log.out 
log4j.appender.file.Append = true 
log4j.appender.file.layout = org.apache.log4j.PatternLayout 
log4j.appender.file.layout.conversionPattern = %m%n 

Dies ist die log4j Hauptklasse:

import org.apache.log4j.Logger; 
public class Log4jExample { 
    static Logger log = Logger.getLogger(Log4jExample.class.getName()); 
    public static void main(String[] args){ 
     log.trace("Trace Message!"); 
     log.debug("Debug Message!"); 
     log.info("Info Message!"); 
     log.warn("Warn Message!"); 
     log.error("Error Message!"); 
     log.fatal("Fatal Message!"); 
    } 
} 

Dies ist der pom ist:

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
<modelVersion>4.0.0</modelVersion> 

<groupId>com.yizhang</groupId> 
<artifactId>log4j-demo</artifactId> 
<version>1.0.0.BUILD-SNAPSHOT</version> 

<dependencies> 
    <dependency> 
     <groupId>log4j</groupId> 
     <artifactId>log4j</artifactId> 
     <version>1.2.16</version> 
    </dependency> 
</dependencies> 

<build> 
    <plugins> 
     <plugin> 
      <artifactId>maven-assembly-plugin</artifactId> 
      <version>3.0.0</version> 
      <configuration> 
       <descriptorRefs> 
        <descriptorRef>jar-with-dependencies</descriptorRef> 
       </descriptorRefs> 
       <archive> 
        <manifest> 
         <mainClass>Log4jExample</mainClass> 
        </manifest> 
       </archive> 
      </configuration> 
      <executions> 
       <execution> 
        <id>make-assembly</id> 
        <phase>package</phase> 
        <goals> 
         <goal>single</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 

Dies ist das Ausgabebild: screencut

+1

log4j.appender.console.layput.conversionPattern - layput? –

+0

>

Antwort

0

Fixieren Sie den Tippfehler layput.

# Define the console appender 
log4j.appender.console = org.apache.log4j.ConsoleAppender 
log4j.appender.console.Threshold = DEBUG 
log4j.appender.console.Target = System.out 
log4j.appender.console.layout = org.apache.log4j.PatternLayout 
log4j.appender.console.layout.conversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS} %-5p -%C- - %m%n 
Verwandte Themen