您的位置:首页 > 其它

Log4j的配置

2016-07-25 13:04 162 查看
Log4j的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可接key=value格式的设置或xml格式的设置信息。通过配置,可以创建出Log4J的运行环境。
创建Log4j的步骤:
在项目中lib目录下引入相关的jar包(log4j-1.2.8.jar)。

在src目录下创建Log4j.properties配置文件。

log4j.rootLogger=debug, stdout, D

### 输出到控制台 ###
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 %c{1}:%L - %m%n

### 输出到日志文件 ###
log4j.appender.D=org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File=logs/log.log
log4j.appender.D.Append=true     ##默认值是true,即将消息增加到指定文件中,false指将消息覆                                   盖指定的文件内容。
log4j.appender.D.Threshold=DEBUG ## 输出DEBUG级别以上的日志
log4j.appender.D.layout=org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%t:%r]-[%p] %m%n
3. 根据项目需求修改其中的属性。
4. 在要输出日志的类中加入相关语句。
定义属性 static Logger logger=Logger.getLogger(Test.class);//Test为输出日志的类
在相关方法中调用 logger.debug("debug");
说明:
log4j.rootLogger=debug, stdout, D  // 此句是将等级为debug的日志信息输出到stdout, D两个目的地,stdout, D可以任意取名。
1、日志的输出的级别有:DEBUG(7)、INFO(6)、 WARN(4)、 ERROR(3)、 FATAL(0)。

2、日志输出的目的地(appender)有:

org.apache.log4j.ConsoleAppender(控制台),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)。
3、layout:日志输出格式,Log4j提供的layout有以下几种:

org.apache.log4j.HTMLLayout(以HTML表格形式布局),
org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)。
4、打印参数: Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,如下:

%m   输出代码中指定的消息
  %p   输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
  %r   输出自应用启动到输出该log信息耗费的毫秒数
  %c   输出所属的类目,通常就是所在类的全名
  %t   输出产生该日志事件的线程名
  %n   输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
  %d   输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2016年7月25日 13:10:28,921
  %l   输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  log4j error debug