锁定老帖子 主题:log4j定时轮换文件
精华帖 (0) :: 良好帖 (13) :: 新手帖 (8) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-04-19
看了标题我就知道是你 哈哈 其实你把自己的名字都留在程序上了 哈哈
|
|
返回顶楼 | |
发表时间:2011-04-19
Foxswily 写道 不知道有没有考虑用slf4j+logback,log4j的作者已经转到把精力完全放倒这上边了,据说性能有提升。
另外log4j是异步输出,服务停止的瞬间不保证能输出所有的log,如果是精确度高的业务也许不合适 http://www.iteye.com/topic/900845 log4j内置的三种 输出方式 flush=true 直接输出到文件,同步不缓存 bufferedIO 按一定字节大小缓存,同步缓存 AsynFileAppender 按一定的条数缓存,异步输出 |
|
返回顶楼 | |
发表时间:2011-04-19
项目中也用过这个!
顶一个了 |
|
返回顶楼 | |
发表时间:2011-04-19
最近总是迷惑日志记录方式,今天学习啦,感谢LZ...
|
|
返回顶楼 | |
发表时间:2011-04-19
貌似这段代码,运行的时候 maxBackupIndex 设置没有作用了... 楼主能说明下么?
|
|
返回顶楼 | |
发表时间:2011-04-19
leeaee 写道 貌似这段代码,运行的时候 maxBackupIndex 设置没有作用了... 楼主能说明下么? 被我注释掉了。~ |
|
返回顶楼 | |
发表时间:2011-04-20
貌似有个小小的BUG:
构造函数TimeRollingFileAppender()里面,第一次运行的时候的 rollTime 始终是定义的值 60,以后才会读去配置的值... setRollTime() 在构造函数后运行造成的? 如果这里修改了,就完美了。 |
|
返回顶楼 | |
发表时间:2011-04-20
leeaee 写道 貌似有个小小的BUG:
构造函数TimeRollingFileAppender()里面,第一次运行的时候的 rollTime 始终是定义的值 60,以后才会读去配置的值... setRollTime() 在构造函数后运行造成的? 如果这里修改了,就完美了。 log4j的配置文件加载机制是, 调用构造函数, 然后读取xml中的key-value,set到appender的property中去。 构造函数里的那个只是检查的时间,不是rollover的时间。 另外,注释掉的那一段timer的代码,就是解决你说的这个问题的, 根据set的rollTime,重设检查时间,后来发现没必要。 |
|
返回顶楼 | |
发表时间:2011-04-20
kimmking 写道 leeaee 写道 貌似有个小小的BUG:
构造函数TimeRollingFileAppender()里面,第一次运行的时候的 rollTime 始终是定义的值 60,以后才会读去配置的值... setRollTime() 在构造函数后运行造成的? 如果这里修改了,就完美了。 log4j的配置文件加载机制是, 调用构造函数, 然后读取xml中的key-value,set到appender的property中去。 构造函数里的那个只是检查的时间,不是rollover的时间。 另外,注释掉的那一段timer的代码,就是解决你说的这个问题的, 根据set的rollTime,重设检查时间,后来发现没必要。 嗯,谢谢~了解的,本来我想的是可以重载下activateOptions这个方法... |
|
返回顶楼 | |
发表时间:2011-04-26
多进程同时写一个log文件的时候,貌似roller文件的就会出现问题,有没有更好的解决方案呢?
|
|
返回顶楼 | |