原文地址:http://blog.csdn.net/naruto1021/article/details/7969535

在使用Spring框架的时候,我们可以很方便的配置log4j来进行日志管理。

进行配置之前,首先得下载jar包(log4j-1.2.11.jar)

配置如下:

1.在web.xml中最上面加入如下配置代码:

  1. <!--log4j配置文件加载-->
  2. <context-param>
  3. <param-name>log4jConfigLocation</param-name>
  4. <param-value>/WEB-INF/log4j.properties</param-value>
  5. </context-param>
  6. <!--启动一个watchdog线程每1800秒扫描一下log4j配置文件的变化-->
  7. <context-param>
  8. <param-name>log4jRefreshInterval</param-name>
  9. <param-value>1800000</param-value>
  10. </context-param>
  11. <!--spring log4j监听器-->
  12. <listener>
  13. <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
  14. </listener>
  1. <!--log4j配置文件加载-->
  2. <context-param>
  3. <param-name>log4jConfigLocation</param-name>
  4. <param-value>/WEB-INF/log4j.properties</param-value>
  5. </context-param>
  6. <!--启动一个watchdog线程每1800秒扫描一下log4j配置文件的变化-->
  7. <context-param>
  8. <param-name>log4jRefreshInterval</param-name>
  9. <param-value>1800000</param-value>
  10. </context-param>
  11. <!--spring log4j监听器-->
  12. <listener>
  13. <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
  14. </listener>

2.把log4j.properties配置文件放在上面配置的指定的目录下

log4j.properties配置文件:

    1. ######################################
    2. #         log4j配置相关说明
    3. ######################################
    4. #%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
    5. #%r 输出自应用启动到输出该log信息耗费的毫秒数
    6. #%c 输出所属的类目,通常就是所在类的全名
    7. #%t 输出产生该日志事件的线程名
    8. #%m 输出代码中指定的信息
    9. #%n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
    10. #%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MM dd HH:mm:ss,SSS},输出类似: 2002年10月18日 22:10:28,921
    11. #%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)
    12. #log4j提供4种布局:
    13. #org.apache.log4j.HTMLLayout(以HTML表格形式布局)
    14. #org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
    15. #org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
    16. #org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息
    17. #log4j中有五级logger 输出级别:
    18. #FATAL 0
    19. #ERROR 3
    20. #WARN 4
    21. #INFO 6
    22. #DEBUG 7
    23. ######################################
    24. #          log4j相关配置
    25. ######################################
    26. #日志输出级别
    27. log4j.rootLogger=INFO,stdout,other
    28. #设置stdout的日志输出控制台
    29. log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    30. #输出日志到控制台的方式,默认为System.out
    31. log4j.appender.stdout.Target = System.out
    32. #设置使用灵活布局
    33. log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    34. #灵活定义输出格式
    35. log4j.appender.stdout.layout.ConversionPattern=[%p][%d{yyyy-MM-dd HH:mm:ss}] %l %m %n
    36. #设置other的日志输出控制台
    37. log4j.appender.other=org.apache.log4j.RollingFileAppender
    38. #设置other的输出日志
    39. log4j.appender.other.File=${webapp.root}/WEB-INF/logs/log.log
    40. #设置other的日志最大限制
    41. log4j.appender.other.MaxFileSize=1024KB
    42. #最多只保存20个备份文件
    43. log4j.appender.other.MaxBackupIndex=1000
    44. #输出INFO级别以上的日志
    45. og4j.appender.other.Threshold=INFO
    46. #设置使用灵活布局
    47. log4j.appender.other.layout=org.apache.log4j.PatternLayout
    48. #灵活定义输出格式
    49. log4j.appender.other.layout.ConversionPattern=[%p][%d{yyyy-MM-dd HH:mm:ss}] %l %t %m %n
    50. ######################################
    51. #       hibernate相关配置
    52. ######################################
    53. #输出hibernate调试过程中的错误日志
    54. log4j.logger.org.hibernate=other
    55. #输出HQL查询调试日志
    56. log4j.logger.org.hibernate.hql.ast.AST=other
    57. #输出SQL语句调试日志
    58. log4j.logger.org.hibernate.SQL=other
    59. #输出 JDBC参数查询的日志
    60. log4j.logger.org.hibernate.type=other
    61. #输出缓存日志
    62. log4j.logger.org.hibernate.cache=other
    63. #输出事务日志
    64. log4j.logger.org.hibernate.transaction=other
    65. #输出获取JDBC资源日志
    66. log4j.logger.org.hibernate.jdbc=other
    67. 文章链接地址:http://blog.csdn.net/lidawei201/article/details/8513635

Spring集成log4j日志管理的更多相关文章

  1. 项目log4j日志管理详解

    项目log4j日志管理详解 log4j日志系统在项目中重要性在这里就不再累述,我们在平时使用时如果没有特定要求,只需在log4j.properties文件中顶入输出级别就行了.如果要自定义输出文件,对 ...

  2. 完整的定时任务解决方案Spring集成+定时任务本身管理+DB持久化+集群

    完整的定时任务解决方案Spring集成+定时任务本身管理+DB持久化+集群 maven依赖 <dependency> <groupId>org.quartz-scheduler ...

  3. commons-logging和Log4j 日志管理/log4j.properties配置详解

    commons-logging和Log4j 日志管理 (zz) 什么要用日志(Log)? 这个……就不必说了吧. 为什么不用System.out.println()? 功能太弱:不易于控制.如果暂时不 ...

  4. SSH集成log4j日志环境[转]

    第一步:在web.xml初始化log4j <context-param> <param-name>log4jConfigLocation</param-name> ...

  5. SSH集成log4j日志环境

    第一步:在web.xml初始化log4j <context-param> <param-name>contextConfigLocation</param-name> ...

  6. Log4j日志管理的简单实例

    大型项目中非常多情况下要分析程序的日志信息,怎样管理自己的日志信息至关重要. 在应用程序中加入日志记录总的来说基于三个目的 , 监视代码中变量的变化情况,周期性的记录到文件里供其它应用进行统计分析工作 ...

  7. android log4j日志管理的使用

    以下为log4j1的日志管理,在android 6.0 一下能正常使用,时候更加高级的胃log4j2,持续跟新 android中的log4j日志文件使用需要两个包,我们不需要进行配置文件的配置,一切都 ...

  8. Hibernate4搭建Log4J日志管理(附Log4j.properties配置详解)

    1.首先加入slf4j的jar包,即slf4j-api-1.6.1.jar 在hibernate官网下载hibernate-release-4.2.2.Final.zip并解压,在hibernate- ...

  9. 使用Spring进行统一日志管理 + 统一异常管理

    http://blog.csdn.net/king87130/article/details/8011843原文地址 统一日志异常实现类: 1 package com.pilelot.web.util ...

随机推荐

  1. 如何在C++中获得完整的类型名称(RTTI的typeid在不同平台下有不同的输出值表达,自建类改进了RTTI丢失的信息)

    Wrote by mutouyun. (http://darkc.at/cxx-get-the-name-of-the-given-type/)   地球人都知道C++里有一个typeid操作符可以用 ...

  2. PDB Files: What Every Developer Must Know

    Reference:  http://www.wintellect.com/blogs/jrobbins/pdb-files-what-every-developer-must-know Most d ...

  3. Xcode证书破解 iphone真机部署

    Xcode证书破解 iphone真机部署 证书伪造: 先按照该教程的步骤添加证书.注意,原教程选择的是"系统"证书,这里我们用"登录"证书,切记. Xcode破 ...

  4. iOS 视图跳转

    //跳转 - ( void)present:( id )sender { NSLog ( @"the button,is clicked …" ); // 创建准备跳转的 UIVi ...

  5. hahahahah

    dsfsefesfsffsfsfsfsfesfsfsfsfsfsfspackage realm;   import java.util.ArrayList; import java.util.List ...

  6. java正则表达式,将字符串中\后的第一个字母变成大写

    java正则表达式,将字符串中\后的第一个字母变成大写 例子是比较简单,注意的是java中的“\\”意义是:我要插入一个正则表达式的反斜线,所以其后面的字符有特殊有意义.所以普通反斜线应该是" ...

  7. C++中operator关键字(重载操作符)

    operator是C++的关键字,它和运算符一起使用,表示一个运算符函数,理解时应将operator=整体上视为一个函数名. 这是C++扩展运算符功能的方法,虽然样子古怪,但也可以理解:一方面要使运算 ...

  8. 全局通知Notification

    Notification 全局通知 关于全局通知的个人理解: 即有一个发射消息的,在整个应用中任何对象都可以接受这个消息 但是无论是哪个对象接受消息,都要在这个对象结束时移除消息 简单的说 就是给对象 ...

  9. HDU4323-Magic Number(levenshtein distance-编辑距离)

    描述: There are many magic numbers whose lengths are less than 10. Given some queries, each contains a ...

  10. css如此强大你知道吗

    看个这个大神纯 CSS 绘制<辛普森一家>人物头像我惊呆了,css如此牛x <div id="wrap"> <div class="cont ...