1. 新建工程,导入log4j的jar包,工程结构如下:
2. log4j.properties:
log4j.rootLogger=debug, STDOUT, DEBUG, INFO, ERROR
### Console ###
log4j.appender.STDOUT = org.apache.log4j.ConsoleAppender
log4j.appender.STDOUT.Target = System.out
log4j.appender.STDOUT.layout = org.apache.log4j.PatternLayout
log4j.appender.STDOUT.layout.ConversionPattern = %d{ABSOLUTE} %5p [%t] (%F:%L) - %m%n
### DEBUG ###
log4j.appender.DEBUG = org.apache.log4j.DailyRollingFileAppender
log4j.appender.DEBUG.File = log/debug.log
log4j.appender.DEBUG.Append = true
log4j.appender.DEBUG.Threshold = DEBUG
log4j.appender.DEBUG.DatePattern='.'yyyy-MM-dd
log4j.appender.DEBUG.layout = org.apache.log4j.PatternLayout
log4j.appender.DEBUG.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} %5p [%t] (%F:%L) - %m%n
### INFO ###
log4j.appender.INFO = org.apache.log4j.DailyRollingFileAppender
log4j.appender.INFO.File = log/info.log
log4j.appender.INFO.Append = true
log4j.appender.INFO.Threshold = INFO
log4j.appender.INFO.DatePattern='.'yyyy-MM-dd
log4j.appender.INFO.layout = org.apache.log4j.PatternLayout
log4j.appender.INFO.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} %5p [%t] (%F:%L) - %m%n
### ERROR ###
log4j.appender.ERROR = org.apache.log4j.DailyRollingFileAppender
log4j.appender.ERROR.File = log/error.log
log4j.appender.ERROR.Append = true
log4j.appender.ERROR.Threshold = ERROR
log4j.appender.ERROR.DatePattern='.'yyyy-MM-dd
log4j.appender.ERROR.layout = org.apache.log4j.PatternLayout
log4j.appender.ERROR.layout.ConversionPattern =%-d{yyyy-MM-dd HH:mm:ss} %5p [%t] (%F:%L) - %m%n
package com.huey.dream.log4j;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
/**
* Log4J的简单示例
* @author huey2672
* @version 1.0
* @created 2014-8-25
*/
public class Log4jTest {
<span style="white-space:pre"> </span>static Logger logger = Logger.getLogger(Log4jTest.class);
<span style="white-space:pre"> </span>public void log() {
<span style="white-space:pre"> </span>logger.debug("Debug Info");
<span style="white-space:pre"> </span>logger.info("Info Info");
<span style="white-space:pre"> </span>logger.warn("Warn Info");
<span style="white-space:pre"> </span>logger.error("Error Info");
<span style="white-space:pre"> </span>logger.fatal("Fatal Info");
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>public static void main(String[] args) {
<span style="white-space:pre"> </span>Log4jTest test = new Log4jTest();
<span style="white-space:pre"> </span>logger.setLevel((Level)Level.WARN);
<span style="white-space:pre"> </span>test.log();
<span style="white-space:pre"> </span>}
}
4. 运行结果:
控制台输出:
16:39:05,217 DEBUG [main] (Log4jTest.java:12) - Debug Info
16:39:05,220 INFO [main] (Log4jTest.java:14) - Info Info
16:39:05,222 WARN [main] (Log4jTest.java:16) - Warn Info
16:39:05,222 ERROR [main] (Log4jTest.java:18) - Error Info
16:39:05,222 FATAL [main] (Log4jTest.java:20) - Fatal Info
debug.log:
2014-08-25 16:39:05 DEBUG [main] (Log4jTest.java:12) - Debug Info
2014-08-25 16:39:05 INFO [main] (Log4jTest.java:14) - Info Info
2014-08-25 16:39:05 WARN [main] (Log4jTest.java:16) - Warn Info
2014-08-25 16:39:05 ERROR [main] (Log4jTest.java:18) - Error Info
2014-08-25 16:39:05 FATAL [main] (Log4jTest.java:20) - Fatal Info
info.log:
2014-08-25 16:39:05 INFO [main] (Log4jTest.java:14) - Info Info
2014-08-25 16:39:05 WARN [main] (Log4jTest.java:16) - Warn Info
2014-08-25 16:39:05 ERROR [main] (Log4jTest.java:18) - Error Info
2014-08-25 16:39:05 FATAL [main] (Log4jTest.java:20) - Fatal Info
error.log:
2014-08-25 16:39:05 ERROR [main] (Log4jTest.java:18) - Error Info
2014-08-25 16:39:05 FATAL [main] (Log4jTest.java:20) - Fatal Info