二、log4j配置文件说明

本文介绍log4j日志的主要配置,日志级别,日志输出目的,日志输出路径,日志格式

log4j.rootLogger=INFO,Console,LOGFILE_COMMOM

log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Threshold=INFO
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}:[%p] %C{1}.%M %m%n

log4j.appender.LOGFILE_COMMOM=org.apache.log4j.RollingFileAppender
log4j.appender.LOGFILE_COMMOM.Threshold=WARN
log4j.appender.LOGFILE_COMMOM.File=${oasc.root}/WEB-INF/logs/CommomLogger.log
log4j.appender.LOGFILE_COMMOM.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE_COMMOM.layout.ConversionPattern=%n[%d{yyyy-MM-dd HH:mm:ss}][%-5p] - %l%n%m%n
log4j.appender.LOGFILE_COMMOM.MaxFileSize=100MB
log4j.appender.LOGFILE_COMMOM.MaxBackupIndex=5

1、log4j日志常用级别level:ERROR > WARN > INFO > DEBUG :级别高的,可以过滤掉级别低的日志

log4j.rootLogger=level,appenderName1,appenderName2,...

  • level指定日志级别,如上图,rootLogger的级别设置为INFO,则appender中Threshold级别比INFO高的(如INFO,WARN,ERROR)会被输出到相应的目的,日志中级别为DEBUG的被过滤掉
  • appenderName指定日志输出目的(类型如2),每个输出目的需添加到rootLogger上

2、log4j日志的输出目的:appender,控制日志输出到控制台或文件中
appender输出类型:

org.apache.log4j.ConsoleAppender(控制台,常用),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件,常用),
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件,常用),
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

  • 添加输出目的,格式如:log4j.appender.appenderName=。。。
  • 添加输出目的级别:格式如:log4j.appender.appenderName.Threshold=level  当logger.method()中的method级别高于或等于level时,日志会输出到这个目的
  • 添加文件时,配置文件大小:MaxFileSize=xxx,xxx表示文件的最大存储空间,如100m
  • 添加文件时,配置文件备份:MaxBackupIndex=x,x表示日志文件的最大备份数量

3、日志输出路径

log4j.appender.LOGFILE_COMMOM.File=${oasc.root}/WEB-INF/logs/CommomLogger.log

日志将输出到CommonLogger.log里面

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  <description>oasc server</description>
  <display-name>oasc</display-name>
  <context-param>
    <param-name>webAppRootKey</param-name>
    <param-value>oasc.root</param-value>
  </context-param>
</web-app>

文件路径配置:通过 webAppRootKey 配置 oasc.root 为相对路径,即项目的根路径

4、日志输出格式常用类型

log4j.appender.LOGFILE_COMMOM.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE_COMMOM.layout.ConversionPattern=%n[%d{yyyy-MM-dd HH:mm:ss}][%-5p] - %l%n%m%n

ConversionPattern格式参数说明:

%n:输出一个回车换行符

%d:输出日志的时间

%p:输出日志的级别,DEBUG,INFO,WARN,ERROR

%l:输出打印这条日志的代码在所在类的第几行

%m:输出日志的内容


日志输出结果如下:

[2017-08-30 19:04:03][WARN ] - com.learn.log.ShowLogger.loggerSuccess(ShowLogger.java:273)
打印成功日志!=======【啦啦啦】



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值