Log4j 1.2.15学习笔记
2007-09-25 10:16
417 查看
Log4j发展的真快,2005年用的时候版本是1.2.8。现在再看时发现都出到2.0了,仔细一看,还有点意思,log4j上作了个说明。log4j有3个分支,1.2是稳定版,1.3不再继续,2.0是实验版。
看来还是用1.2版的比较好,现在的版本是1.2.15,和1.2.8比有很大的变化。从配置文件里反映出来,大的结构都变了。现把要点摘录如下:
Log4j有3个主要部件,loggers, appenders and layouts.
logger有如下几个级别,排列如下:
logger引入了继承的概念,这里指的是名称继承,logger com.foo是 com.foo.Bar的父logger。同样java.util是java.util.Vector的父类。
另外Logger x = Logger.getLogger("wombat"); 和 Logger y = Logger.getLogger("wombat");是指向同一个对象,这样的话不需要到处传递对象的引用。
appender的意思是“输出的目的地”, 它可以是console,file,gui component,JMS,remote socket server,NT Event Log
任何写log的请求会被传递到这个logger所有的appender那里,同样也会传递到继承关系的上一级的logger的appender那里。appender会随着logger继承关系而附加继承。如果想停止这种附加继承,可以把additivity的标记设为false。
layout顾名思义是管输出的格式的,PatternLayout是Log4j的标准输出格式,具体内容请参照javadoc
简单归纳一下PatternLayout,一般的格式是%+格式修饰符+转换字符。转换字符就是要显示哪些内容,可以参照javadoc查到,格式修饰符的规律如下:
最后贴个例子:
log4j.rootLogger=debug, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=example.log
log4j.appender.R.MaxFileSize=100KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
补充一点,配置文件要么放在classpath里,不用特殊声明。要么指明路径,如下初始化,一次即可。
[/code]
看来还是用1.2版的比较好,现在的版本是1.2.15,和1.2.8比有很大的变化。从配置文件里反映出来,大的结构都变了。现把要点摘录如下:
Log4j有3个主要部件,loggers, appenders and layouts.
logger有如下几个级别,排列如下:
DEBUG < INFO < WARN < ERROR < FATAL
logger引入了继承的概念,这里指的是名称继承,logger com.foo是 com.foo.Bar的父logger。同样java.util是java.util.Vector的父类。
另外Logger x = Logger.getLogger("wombat"); 和 Logger y = Logger.getLogger("wombat");是指向同一个对象,这样的话不需要到处传递对象的引用。
appender的意思是“输出的目的地”, 它可以是console,file,gui component,JMS,remote socket server,NT Event Log
任何写log的请求会被传递到这个logger所有的appender那里,同样也会传递到继承关系的上一级的logger的appender那里。appender会随着logger继承关系而附加继承。如果想停止这种附加继承,可以把additivity的标记设为false。
layout顾名思义是管输出的格式的,PatternLayout是Log4j的标准输出格式,具体内容请参照javadoc
简单归纳一下PatternLayout,一般的格式是%+格式修饰符+转换字符。转换字符就是要显示哪些内容,可以参照javadoc查到,格式修饰符的规律如下:
Format modifier | left justify | minimum width | maximum width | comment |
---|---|---|---|---|
%20c | false | 20 | none | Left pad with spaces if the category name is less than 20 characters long. |
%-20c | true | 20 | none | Right pad with spaces if the category name is less than 20 characters long. |
%.30c | NA | none | 30 | Truncate from the beginning if the category name is longer than 30 characters. |
%20.30c | false | 20 | 30 | Left pad with spaces if the category name is shorter than 20 characters. However, if category name is longer than 30 characters, then truncate from the beginning. |
%-20.30c | true | 20 | 30 | Right pad with spaces if the category name is shorter than 20 characters. However, if category name is longer than 30 characters, then truncate from the beginning. |
log4j.rootLogger=debug, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=example.log
log4j.appender.R.MaxFileSize=100KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
补充一点,配置文件要么放在classpath里,不用特殊声明。要么指明路径,如下初始化,一次即可。
String resource = "/examples/lf5/InitUsingPropertiesFile/example.properties"; URL configFileResource = InitUsingPropertiesFile.class.getResource(resource); PropertyConfigurator.configure(configFileResource);
[/code]
相关文章推荐
- [转贴] Log4j 学习笔记
- Apache Log4j 学习笔记
- Log4j 学习笔记
- druid和log4j学习笔记
- Apache Log4j 学习笔记
- Log4j 学习笔记
- Log4J 学习笔记(3)
- log4j学习笔记
- log4j学习笔记2
- Java for Web学习笔记(五一):Log(3)代码中使用log4j2
- Apache Log4j 学习笔记
- Java学习笔记(十九)——Java 日志记录 AND log4j
- 学习笔记:log4j.properties配置
- Log4j 学习笔记
- Spring 4.2.4.RELEASE MVC 学习笔记 - 5 - Log4j(咋个办呢 zgbn)
- Apache Log4j 学习笔记(强力推荐,log4j好文)
- Log4j 学习笔记
- log4j的方式记录日志学习笔记(一)
- Log4j 1.2 学习笔记
- log4j 学习笔记