log4j-slf4j 典型用例
一、maven 配置
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.6</version> </dependency>
二、 log4j 配置
log4j.rootLogger=INFO, console # simple console log log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}] %p ~ %m%n
## for jul logging log4j.logger.org.zales.dmo.samples.logging=TRACE,julAppender log4j.additivity.org.zales.dmo.samples.logging=false log4j.appender.julAppender=org.apache.log4j.ConsoleAppender log4j.appender.julAppender.layout=org.apache.log4j.PatternLayout log4j.appender.julAppender.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}]--[%t] [%p] -%l - %m%n
## for daily rolling log4j.logger.accesslog=INFO, accessRolling log4j.additivity.accesslog=false log4j.appender.accessRolling=org.apache.log4j.DailyRollingFileAppender log4j.appender.accessRolling.File=logs/access.log log4j.appender.accessRolling.DatePattern='.'yyyy-MM-dd log4j.appender.accessRolling.layout=org.apache.log4j.PatternLayout log4j.appender.accessRolling.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}]--[%t] [%p] -%l - %m%n
## for file size rolling log4j.logger.filemax=INFO, fileMaxRolling log4j.additivity.filemax=false log4j.appender.fileMaxRolling=org.apache.log4j.RollingFileAppender log4j.appenile.fileMaxRolling.Append = true log4j.appenile.fileMaxRolling.MaxFileSize = 5MB log4j.appenile.fileMaxRolling.MaxBackupIndex = 100 log4j.appender.fileMaxRolling.File=logs/filemax.log log4j.appender.fileMaxRolling.layout=org.apache.log4j.PatternLayout log4j.appender.fileMaxRolling.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}]--[%t] [%p] -%l - %m%n
配置说明
-
禁用上溯
log4j.additivity.org.zales.dmo.samples.logging=false -
日志格式
简单输出
log4j.appender.console.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}] %p ~ %m%n
详细输出
log4j.appender.julAppender.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}]–[%t] [%p] -%l - %m%n
3.Pattern说明
-X号: X信息输出时左对齐; %p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL, %d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921 %r: 输出自应用启动到输出该log信息耗费的毫秒数 %c: 输出日志信息所属的类目,通常就是所在类的全名 %t: 输出产生该日志事件的线程名 %l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main (TestLog4.java:10) %x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。 %%: 输出一个"%"字符 %F: 输出日志消息产生时所在的文件名称 %L: 输出代码中的行号 %m: 输出代码中指定的消息,产生的日志具体信息 %n: 输出一个回车换行符,Windows平台为"/r/n",Unix平台为"/n"输出日志信息换行
三、程序使用
private static final Logger logger = LoggerFactory.getLogger("xxx"); ... logger.info("xxx:{}, xxx:{}", id, name);
作者: 美码师(zale)
出处: http://www.cnblogs.com/littleatp/, 如果喜欢我的文章,请关注我的公众号
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出 原文链接 如有问题, 可留言咨询.