1. web.xml

<!-- 加载Log4J 配置文件  -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>WEB-INF/conf/log4j.properties</param-value>
</context-param> <context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>3000</param-value>
</context-param> <listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
log4jConfigLocation 配置log4j.properties 文件的位置。也可以这样配置 classpath:log4j.properties

2. 日志文件的位置

1)绝对路径

log4j.appender.R.File=D:/log/xxx.log

2)相对路径:

log4j.appender.R.File=../logs/app.log,将日志记录到tomcat下的logs文件夹;

log4j.appender.R.File=logs/app.log,将日志记录到tomcat的bin目录下的logs文件夹;

(3)使用环境变量相对路径法:程序会优先找jvm环境变量,然后再找系统环境变量,来查找配置文件中的变量。
        log4j.appender.logfile.File=${user.dir}/logs/app.log,使用tomcat容器时${user.dir}对应tomcat的bin目录;
        log4j.appender.logfile.File=${user.home}/logs/app.log,${user.home}对应操作系统当前用户目录;
        log4j.appender.logfile.File=${webApp.root}/logs/app.log,${webApp.root}对应当前应用根目录;
3. 不同框架的日志分开存储:
#all logger output level is 'ERROR' and output position is stdout
#so only write our project's DEBUG log and ERROR log of the others
log4j.rootLogger=ERROR, stdout, R
#log4j.appender is set output postion
#log4j.logger is set some package(some package your want output logger specially)=[output level],[...output position] log4j.logger.org.springframework=OFF
log4j.logger.org.apache.commons=OFF
log4j.logger.org.apache.struts=OFF
log4j.logger.org.hibernate=OFF #log4j.logger.org.logicalcobwebs=OFF #only write our project's log(DEBUG)
log4j.logger.com.mycompany=DEBUG log4j.logger.org.apache.commons.dbcp=DEBUG, dbcp
#log4j.logger.org.logicalcobwebs.proxool=DEBUG, proxool #log4j.logger.org.springframework=DEBUG, spring log4j.logger.org.apache.catalina.core=DEBUG, catalina #in the console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
#config stdout position output contain INFO level and up
log4j.appender.stdout.Threshold=DEBUG
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%-5p] %l:%t - %m %n #in the daily files
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.Threshold=DEBUG
log4j.appender.R.File=D:/EMR/log/EMR.log
log4j.appender.R.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n log4j.logger.com.statestr=DEBUG log4j.appender.dbcp=org.apache.log4j.DailyRollingFileAppender
log4j.appender.dbcp.Threshold=DEBUG
log4j.appender.dbcp.File=D:/EMR/log/dbcp.log
log4j.appender.dbcp.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.dbcp.layout=org.apache.log4j.PatternLayout
log4j.appender.dbcp.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n log4j.appender.proxool=org.apache.log4j.DailyRollingFileAppender
log4j.appender.proxool.Threshold=DEBUG
log4j.appender.proxool.File=D:/EMR/log/proxool.log
log4j.appender.proxool.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.proxool.layout=org.apache.log4j.PatternLayout
log4j.appender.proxool.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n log4j.appender.spring=org.apache.log4j.DailyRollingFileAppender
log4j.appender.spring.Threshold=DEBUG
log4j.appender.spring.File=D:/EMR/log/spring.log
log4j.appender.spring.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.spring.layout=org.apache.log4j.PatternLayout
log4j.appender.spring.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n log4j.appender.catalina=org.apache.log4j.DailyRollingFileAppender
log4j.appender.catalina.Threshold=DEBUG
log4j.appender.catalina.File=D:/EMR/log/catalina.log
log4j.appender.catalina.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.catalina.layout=org.apache.log4j.PatternLayout
log4j.appender.catalina.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n

4. 关闭日志

log4j.logger.org.springframework=OFF
log4j.logger.org.apache.commons=OFF
log4j.logger.org.apache.struts=OFF
log4j.logger.org.hibernate=OFF 或者
log4j.logger.org.springframework=WARN
log4j.logger.org.apache.commons=WARN
log4j.logger.org.apache.struts=WARN
log4j.logger.org.hibernate=WARN
 
 

springmvc log4j配置的更多相关文章

  1. springmvc log4j 配置

    web.xml 增加 <context-param> <param-name>log4jConfigLocation</param-name> <param- ...

  2. springmvc+log4j操作日志记录,详细配置

    没有接触过的,先了解一下:log4j教程 部分内容来:log4j教程 感谢! 需要导入包: log包:log4j-12.17.jar 第一步:web.xml配置 <!-- log4j配置,文件路 ...

  3. SpringMVC基础配置(通过注解配置,非xml配置)

    SpringMVC是什么,有多火,我这里就不再啰嗦了,SpringMVC比Struts2好用太多,我在学校的时候私下里两种都接触过,对比之后果断选择了SpringMVC,后来在做Android应用开发 ...

  4. maven+springmvc的配置

    1. 首先创建1个mavenweb项目  如果没有的话最好是去官网下载一个最新版本的eclipse  里面什么都有 maven/gradle 啥的 2. 选择路径   没啥影响 就是一个路径 默认就行 ...

  5. 使用log4j配置不同文件输出不同内容

    敲代码中很不注意写日志,虽然明白很重要.今天碰到记录日志,需要根据内容分别输出到不同的文件. 参考几篇文章: 感觉最详细:http://blog.csdn.net/azheng270/article/ ...

  6. log4j 配置

    给java项目添加log4j日志: 1.下载log4j jar包,放入lib目录, 导入项目中 2.创建log4j.properties 文件  目录 Src 3.在需要使用输出的类中使用 priva ...

  7. log4j配置日志文件log4j.appender.R.File相对路径方法

    方法一. 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs ...

  8. paip.Log4j配置不起作用的解决

    paip.Log4j配置不起作用的解决 1.jar包里的log4j配置 看累挂jar,真的有个" webservices-rt.jar\com\sun\org\apache\xml\inte ...

  9. Flume学习 & Kafka & Storm 等 & Log4J 配置

    正在学习这篇文章: http://blog.csdn.net/ymh198816/article/details/51998085 和工作中接触的电商.订单.分析,可以结合起来. 开宗明义,这幅图片: ...

随机推荐

  1. LeetCode--015--三元之和(java)

    给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组. 注意:答案中不可以包含重复的三元组. ...

  2. JavaScript中的label语句,及应用

    label语句:可以在代码中添加标签,以便将来使用. 语法:label : statement 示例: start: for(var i=0;i<10;i++){ console.log(i); ...

  3. 关于vs调用数据库存储过程 返回输出参数的一些总结

    1.直接上练习的存储过程,方便回想 create proc proc_output @totlecount int output, @pageIndex int, @pageSize intas de ...

  4. python之二分法查找

    二分法查找主要的作用就是查找元素 规则. 掐头结尾取中间, 必须是有序列 # 二分法查找 (需要你明白和掌握) # lst = [1,3,5,7,12,36,68,79] # n = int(inpu ...

  5. [Codeforces440D]Berland Federalization

    Problem 给你一棵树,最少删掉哪些边,能使得余下的至少有1个大小刚好为k的残树. 1 ≤ k ≤ n ≤ 400 Solution 用f[i][j]表示以i为根有j个节点的最少删边数量 因为此题 ...

  6. Python文件读写(open(),close(),with open() as f...)

    Python内置了读写文件的函数,用法和C是兼容的.本节介绍内容大致有:文件的打开/关闭.文件对象.文件的读写等. 本章节仅示例介绍 TXT 类型文档的读写,也就是最基础的文件读写,也需要注意编码问题 ...

  7. vue 创建项目

    先安装node.js环境 #先安装npm 阿里镜像 (之后cnpm 下载组件快速) npm install -g cnpm --registry=https://registry.npm.taobao ...

  8. Qml和C++开发的学生信息管理软件一

    一个月前接触到了Qml,也做过一些练习,但只能实现动画和简单的布局功能,逻辑部分和数据处理很难上手,看到许多人将C++和结合起来,Qml负责界面设计,C++实现逻辑处理,但将C++注册到 Qml中一直 ...

  9. c++ 生成dll文件并调用-转

    .h(头文件) .lib(库文件) .dll(动态链接库文件) 之间的关系和作用的区分   .h头文件是编译时必须的,lib是链接时需要的,dll是运行时需要的. 附加依赖项的是.lib不是.dll, ...

  10. 入门项目 A5-1 interface-bank 第三方接口1

    from db import db_handler # 提现接口 def withdraw_interface(name, money): # 定义提现接口,传入name与money参数 user_d ...