我已经为log4cplus创建了一个配置文件,但它的工作原理却不起作用,但MaxFileSize没有做任何事情,所以我的文件不断增长而不考虑我的限制。 这是我的代码:
### logs.properties
# root logger
log4cplus.rootLogger=INFO, Main
# specific logger
log4cplus.logger.myloggerINFO, Main
log4cplus.additivity.mylogger=false
# appender that automatically rolls files
log4cplus.appender.Main=log4cplus::DailyRollingFileAppender
log4cplus.appender.Main.Schedule=DAILY
log4cplus.appender.Main.File=mylogs.log
log4cplus.appender.Main.Append=true
log4cplus.appender.Main.MaxBackupIndex=100
log4cplus.appender.Main.MaxFileSize=100KB
log4cplus.appender.Main.layout=log4cplus::PatternLayout
log4cplus.appender.Main.layout.ConversionPattern=%D | %-5.5p | %-20.20c | %m|%n
log4cplus.logger.myLoggerName=DEBUG, R2
log4cplus.appender.R2=log4cplus::RollingFileAppender
log4cplus.appender.R2.File=logs/webaccess.log
log4cplus.appender.R2.Append=true
log4cplus.appender.R2.MaxBackupIndex=5
log4cplus.appender.R2.MaxFileSize=5KB
log4cplus.appender.R2.layout=log4cplus::PatternLayout
log4cplus.appender.R2.layout.ConversionPattern=%D | %-5.5p | %-20.20c | %m|%n
这是我得到的文件列表的示例:
webaccess.log | 7kb even if max=5
mylogs.log | 0
mylogs.log.2012-11-26 | 1k
mylogs.log.2012-11-26.1 |1k
...
mylogs.log.2012-11-26.45 | 1k
he create new files even if max=100k
所以如果你看错了,请告诉我 感谢
答案 0 :(得分:2)
Log4cplus'DailyRollingFileAppender不会观察MaxFileSize
属性。目前,无论是按时间还是按大小选择滚动日志文件,都不能同时使用两者。
编辑1:
appender R2
不起作用,因为允许的MaxFileSize
值有一个下限:const long MINIMUM_ROLLING_LOG_SIZE = 200*1024L;
这是200 KiB。它从log4cplus源码开始(或真的很长),我从来没有觉得需要删除限制。