?? 我们开发的B/S结构系统,在服务端一般要有日常运行的日志记录。保存成日志文件形式的时候,大家经常会遇到一个问题:日志文件过大。上百兆的日志文件对 ?查阅日志信息来说也是一个问题。所以我希望能够每天或每个月产生一个日志文件,这样文件不至于过大。 ?或者根据日志文件大小来判断,超过规定大小,日志自动增加新文件。 ?
? ? ? ?在log4j中这两种方式的实现都很简单,只要在配置文件中设置即可。 ?
?
一、按照一定时间产生日志文件,配置文件如下: ?
? ? ? ?# ?Set ?root ?logger ?level ?to ?ERROR ?and ?its ?only ?appender ?to ?A1. ?
? ? ? ?log4j.rootLogger=ERROR,R ?
?
? ? ? ?# ?R ?is ?set ?to ?be ?a ?DailyRollingFileAppender. ?
? ? ? ?log4j.appender.R=org.apache.log4j.DailyRollingFileAppender ?
?
? ? ? ?log4j.appender.R.File=backup.log ?
? ? ? ?log4j.appender.R.DatePattern ?= ?'.'yyyy-MM-dd ?
? ? ? ?log4j.appender.R.layout=org.apache.log4j.PatternLayout ?
? ? ? ?log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd ?HH:mm:ss} ?[%c]-[%p] ?%m%n ?
? ? ? ? ?
? ? ? ?以上配置是每天产生一个备份文件。其中备份文件的名字叫backup.log。 ?
? ? ? ?具体的效果是这样:当天的日志信息记录在backup.log文件中,前一天的记录在名称为 ? ? ?backup.log.yyyy-mm-dd ?的文件中。 ?
? ? ? ?类似的,如果需要每月产生一个文件可以修改上面的配置: ?
? ? ? ?将 ?
? ? ? ? ? ?log4j.appender.R.DatePattern ?= ?'.'yyyy-MM-dd ?
? ? ? ?改为 ?
? ? ? ? ? ? ? ?log4j.appender.R.DatePattern ?= ?'.'yyyy-MM ?
?
二、根据日志文件大小自动产生新日志文件 ?
? ? ? ?配置文件内容如下: ?
?
# ?Set ?root ?logger ?level ?to ?ERROR ?and ?its ?only ?appender ?to ?A1. ?
log4j.rootLogger=ERROR,R ?
?
# ?R ?is ?set ?to ?be ?a ?RollingFileAppender. ?
log4j.appender.R=org.apache.log4j.RollingFileAppender ?
?
log4j.appender.R.File=backup.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=%-d{yyyy-MM-dd ?HH:mm:ss} ?[%c]-[%p] ?%m%n ?
?
?
其中: ?
#日志文件的大小 ?
log4j.appender.R.MaxFileSize=100KB ? ?
# ?保存一个备份文件 ?
log4j.appender.R.MaxBackupIndex=1
详细解决方案
log4j惯用配置
热度:456 发布时间:2012-08-29 08:40:14.0
相关解决方案
- log4j 一个线程记录一个日志怎么配置
- 疯了,log4j,用的slf的api和转换适配器解决办法
- log4j 不能生成日志信息解决方案
- log4j:ERROR setFile(null,false) call failed.解决方法
- log4j 下载疑问解决方法
- myeclipse控制台程序运行报错:could not find the main class:org.apache.log4j.net.JMSSink.解决办法
- myeclipse控制台程序运作报错:could not find the main class:org.apache.log4j.net.JMSSink
- log4j, slf4j, logback 都只能单例?解决思路
- log4j 项目启动的时候出现了警告,该如何处理
- log4j.properties配置的有关问题(日志记录失效)
- log4j.appender.Threshold=DEBUG是什么意思,该如何解决
- log4j mail通报
- 【转】Log4j 加载施用及配置说明
- log4j 异常小记
- weblogic 支配报错 tried to access method org.apache.log4j.Logger
- [转] log4j 配备含义
- log4j.properties配备详解(转载)
- log4J 没法输出信息到日志文件
- Log4J 施用
- How can I setup my BlazeDS implementation with Log4J
- SSH+Log4j+JUnit+MySql整合Web Project练习小结,重点在Spring下怎么进行JUnit测试
- log4j+spring配备-webAppRootKey
- 错误输出到日志 log4j java
- log4j 日记入库
- log4j 日记初始化
- log4j 自定义输出不同资料
- Log4j 经典小结
- jsp-log4j 日记 简单用法笔记
- log4j 起动log4j.properties中的文件路径报错setFile(null,true) 找不到指定路径
- log4j slf4j 以及web.xml日记配置