log4j(1.x)最全配置!!!

(本文持续更新中。。。


如果要彻底了解 log4j 的配置都起到了什么作用,当然要先看看 log4j 的内部原理啦 -> [占位符]

以下正文开始:

 

Part1. 如何让配置生效

log4j 并不提供默认的 appender,程序启动时,log4j 会自动寻找配置并初始化(见 org.apache.log4j.LogManager 的 static 代码段)

1)读取系统变量 log4j.defaultInitOverride 的值,如果值为 null(默认)或者 false,就会开始执行以下初始化步骤;否则跳过

2)读取系统变量 log4j.configuration 的值,该值为初始化配置文件的地址,默认为类路径下的 log4j.xml、log4j.properties(按先后顺序)

3)用初始化配置文件的地址构造一个 URL 对象

4)如果 url 有效,则用 org.apache.log4j.xml.DOMConfigurator 解析 xml 类型的配置文件,用 org.apache.log4j.PropertyConfigurator 解析 properties 类型的配置文件;否则中止初始化

 

Part2. propertes 类型配置文件如何配置

 1 # 配置 logger 的 级别 和 appender
 2 log4j.rootLogger=DEBUG, A1
 3 log4j.logger.happyhacking=info
 4 
 5 # 配置 appender
 6 log4j.appender.A1=org.apache.log4j.ConsoleAppender
 7 
 8 # 配置 appender 的 layout
 9 log4j.appender.A1.layout=org.apache.log4j.PatternLayout
10 log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

 

 

 

 

Ref:

https://logging.apache.org/log4j/1.2/manual.html

 

posted @ 2019-03-10 23:16  _lazyval  阅读(338)  评论(0编辑  收藏  举报