Spring集成log4j日志管理
原文地址:http://blog.csdn.net/naruto1021/article/details/7969535
在使用Spring框架的时候,我们可以很方便的配置log4j来进行日志管理。
进行配置之前,首先得下载jar包(log4j-1.2.11.jar)
配置如下:
1.在web.xml中最上面加入如下配置代码:
- <!--log4j配置文件加载-->
- <context-param>
- <param-name>log4jConfigLocation</param-name>
- <param-value>/WEB-INF/log4j.properties</param-value>
- </context-param>
- <!--启动一个watchdog线程每1800秒扫描一下log4j配置文件的变化-->
- <context-param>
- <param-name>log4jRefreshInterval</param-name>
- <param-value>1800000</param-value>
- </context-param>
- <!--spring log4j监听器-->
- <listener>
- <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
- </listener>
- <!--log4j配置文件加载-->
- <context-param>
- <param-name>log4jConfigLocation</param-name>
- <param-value>/WEB-INF/log4j.properties</param-value>
- </context-param>
- <!--启动一个watchdog线程每1800秒扫描一下log4j配置文件的变化-->
- <context-param>
- <param-name>log4jRefreshInterval</param-name>
- <param-value>1800000</param-value>
- </context-param>
- <!--spring log4j监听器-->
- <listener>
- <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
- </listener>
2.把log4j.properties配置文件放在上面配置的指定的目录下
log4j.properties配置文件:
- ######################################
- # log4j配置相关说明
- ######################################
- #%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
- #%r 输出自应用启动到输出该log信息耗费的毫秒数
- #%c 输出所属的类目,通常就是所在类的全名
- #%t 输出产生该日志事件的线程名
- #%m 输出代码中指定的信息
- #%n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
- #%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MM dd HH:mm:ss,SSS},输出类似: 2002年10月18日 22:10:28,921
- #%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)
- #log4j提供4种布局:
- #org.apache.log4j.HTMLLayout(以HTML表格形式布局)
- #org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
- #org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
- #org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息
- #log4j中有五级logger 输出级别:
- #FATAL 0
- #ERROR 3
- #WARN 4
- #INFO 6
- #DEBUG 7
- ######################################
- # log4j相关配置
- ######################################
- #日志输出级别
- log4j.rootLogger=INFO,stdout,other
- #设置stdout的日志输出控制台
- log4j.appender.stdout=org.apache.log4j.ConsoleAppender
- #输出日志到控制台的方式,默认为System.out
- log4j.appender.stdout.Target = System.out
- #设置使用灵活布局
- log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
- #灵活定义输出格式
- log4j.appender.stdout.layout.ConversionPattern=[%p][%d{yyyy-MM-dd HH:mm:ss}] %l %m %n
- #设置other的日志输出控制台
- log4j.appender.other=org.apache.log4j.RollingFileAppender
- #设置other的输出日志
- log4j.appender.other.File=${webapp.root}/WEB-INF/logs/log.log
- #设置other的日志最大限制
- log4j.appender.other.MaxFileSize=1024KB
- #最多只保存20个备份文件
- log4j.appender.other.MaxBackupIndex=1000
- #输出INFO级别以上的日志
- og4j.appender.other.Threshold=INFO
- #设置使用灵活布局
- log4j.appender.other.layout=org.apache.log4j.PatternLayout
- #灵活定义输出格式
- log4j.appender.other.layout.ConversionPattern=[%p][%d{yyyy-MM-dd HH:mm:ss}] %l %t %m %n
- ######################################
- # hibernate相关配置
- ######################################
- #输出hibernate调试过程中的错误日志
- log4j.logger.org.hibernate=other
- #输出HQL查询调试日志
- log4j.logger.org.hibernate.hql.ast.AST=other
- #输出SQL语句调试日志
- log4j.logger.org.hibernate.SQL=other
- #输出 JDBC参数查询的日志
- log4j.logger.org.hibernate.type=other
- #输出缓存日志
- log4j.logger.org.hibernate.cache=other
- #输出事务日志
- log4j.logger.org.hibernate.transaction=other
- #输出获取JDBC资源日志
- log4j.logger.org.hibernate.jdbc=other
- 文章链接地址:http://blog.csdn.net/lidawei201/article/details/8513635
如果一件事情你觉得难的完不成,你可以把它分为若干步,并不断寻找合适的方法。最后你发现你会是个超人。不要给自己找麻烦,但遇到麻烦绝不怕,更不要退缩。
电工查找电路不通点的最快方法是:分段诊断排除,快速定位。你有什么启示吗?
求知若饥,虚心若愚。
当你对一个事情掌控不足的时候,你需要做的就是“梳理”,并制定相应的规章制度,并使资源各司其职。