我们开发的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。 www_bitscn_com
具体的效果是这样:当天的日志信息记录在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.appender.fileout=org.apache.log4j.Log4JDateAndSizeSplit 即可,其余和原api一样: log4j.appender.fileout.MaxFileSize=10240KB log4j.appender.fileout.MaxBackupIndex=20
由公司的项目需要根据日期和文件大小切分log4j日志,所以实现来该appender。本人测试通过,并且在公司的其它项目中已有线上使用,暂时还没发现问题。本人代码有写得不好或者错误的地方,欢迎大家指正,谢谢!!!
log4j2配置文件,按照文件大小划分日志,保存日期天数内的日志,指纹日志命名规则,日志输出等级等功能
由公司的项目需要根据日期和文件大小切分log4j日志,所以实现来该appender。本人测试通过,并且在公司的其它项目中已有线上使用,暂时还没发现问题。本人代码有写得不好或者错误的地方,欢迎大家指正,谢谢!!!
实际项目中经常会用到日志打印 为避免日志打印输出文件过大 消耗服务器内存 需要限制大小
tomcat下用Log4j 按文件大小,生成catalina.out日志文件
最近写的demo。安卓环境使用log4j 滚动日志。 实现数据format格式化传输记录日志内容。 非配置文件的方式
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件), org.apache.log4j.WriterAppender(将日志信息...
通过log4j扩展包实现生成带时间戳的日志文件(其中包含extras包以及简单demo)
重写log4j流记录日志到指定文件采用了xml,properties文件配置,日志记录容量达到指定配置文件最大容量大小,自动增加新日志文件,配置简单。只需要把log4.xml,log4j.properties文件复制到src目录中,源码文件放在...
2.8 日志文件的大小 7 2.9 Log4j.properties例子 7 3 日志输出方式实现 8 3.1 应用于控制台 8 3.2 应用于文件 8 3.3 应用于文件回滚 8 3.4 应用于socket 9 3.5 发送日志给邮件 9 3.6 用于数据库 9 3.7 自定义...
Linux Tomcat下使用Log4j接管catalina.out 日志文件生成方式,按天分割,解决catalina.out日志文件过大问题 1、将log4j-1.2.17.jar、tomcat-juli-adapters.jar两个jar包和log4j.properties文件拷贝到 Tomcat 的 lib...
文件输出器“debug_appender”只会输出级别为“debug”和“info”之间的日志信息,输出到文件“debug.log”中,每天产生一个新的日志文件,同时在日志文件大小达到10MB时,会产生一个新的文件。输出格式同控制台输出...
log4j.appender.llg=org.apache.log4j.RollingFileAppender #文件位置 #配置llg这个日志文件的位置 log4j.appender.llg.File=f:/llg/log.log #挂上 #。。。没想机密,都配置好了,还要有一个确认 log4j.appender.llg...
Oracle DG下修改redo log和standby redo log日志大小.txt
log4j的配置文件,包含配置多个日志文件,设置文件大小,路径
原程序,只实现了RollingFileAppender ,文件可以按指定大小 定量产生,但是常用的记录日志方法是 按天生产一个日志文件,所以就从官网上下了源码,简单的修改下,增加了对DailyRollingFileAppender 的支持,可以...
log4j.xml文件配置 ,可以实现日志保留的位置,日志格式,可以配置策略(每一天转存,文件大小)文件个数,单个文件的最大Mb, 以及过滤类的包名功能还有日志的级别
// Description: pb日志组件,把log4pb.pbd, callback.pbd加入到开发的libary列表中 // 1. log4pb调用演示例子, 思想仿log4j // 2. 集成对象到application, // 3. 组件文件: log4pb90.pdb + callback.pbd, // 4. ...