Log4j使用实例

来源:互联网 发布:java web 工作 编辑:程序博客网 时间:2024/05/29 10:40

新建TestLog.java

package testLog;import org.apache.log4j.Logger;import org.apache.log4j.PropertyConfigurator;public class TestLog {static Logger logger = Logger.getLogger(TestLog.class.getName()); public static void main(String[] args) {  PropertyConfigurator pc = new PropertyConfigurator();  pc.configure("D:/log4j.properties");// log4j.properties配置文件位置                    //DEBUG < INFO < WARN < ERROR < FATAL  logger.debug("Debug ...");  logger.info("Info ...");  logger.warn("Warn ...");  logger.error("Error ..."); }}
配置log4j.properties文件内容如下:

#### Use one appender to log to console##DEBUG < INFO < WARN < ERROR < FATALlog4j.rootCategory=INFO, stdout, S#### Appender writes to consolelog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern= %5p(%F:%L) - %m%n#### Appender writes to filelog4j.appender.S=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.S.File=D:\\converswflog4j.appender.S.layout=org.apache.log4j.PatternLayoutlog4j.appender.S.DatePattern ='.'yyyy-MM-dd'.log'log4j.appender.S.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} %m%n

log4j.properties中配置“log4j.rootLogger=INFO, stdout, S”的作用是控制显示出来的信息。此句为将等级为INFO的日志信息输出到stdout和S这两个目的地,stdout和S的定义在下面的代码,可以任意起名。等级可分为OFF、 FATAL、ERROR、WARN、INFO、DEBUG、ALL,如果配置OFF则不打出任何信息。

Log4j提供的appender有以下几种:


org.apache.log4j.ConsoleAppender(控制台),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)