kalinkav 2018-06-25 03:08 采纳率: 50%
浏览 2578
已结题

log4cplus 生成太多日志,新生成的日志无法覆盖最早生成的。

下面是我的配置还有测试代码。
望有大神指点:
配置文件名:log.conf
log4cplus.rootLogger=DEBUG,LoggerDRoot

log4cplus.appender.LoggerDRoot=log4cplus::DailyRollingFileAppender
log4cplus.appender.LoggerDRoot.File=./LogFiles/DeBug.log
log4cplus.appender.LoggerDRoot.Schedule=MINUTELY
log4cplus.appender.LoggerDRoot.MaxBackupIndex=3
log4cplus.appender.LoggerDRoot.Append=true
log4cplus.appender.LoggerDRoot.MaxFileSize=10MB
log4cplus.appender.LoggerDRoot.layout=log4cplus::PatternLayout
log4cplus.appender.LoggerDRoot.layout.ConversionPattern=NDC:[%x] - %D{%y/%m/%d %H:%M:%S:%q} - %m [%l]%n

测试代码:
int main()
{
PropertyConfigurator::doConfigure("log.conf");
Logger p_debug_logger = Logger::getRoot();

        for (int i = 0; i < 10000; ++i)
        {
                    LOG4CPLUS_DEBUG(p_debug_logger, "LogCount --- " << i);
                    cout << "LogCount --- " << i << endl;
                    Sleep(1000);
        }

        system("pause");
        return 0;
}

理论上应该是最多只会有 3 个 日志文件吧。
但结果成成了很多 log 文件, 我发截图了。
图片说明

  • 写回答

5条回答 默认 最新

  • hot2dog 2018-06-25 05:14
    关注

    log4cplus.appender.LoggerDRoot=log4cplus::DailyRollingFileAppender

    这一句设置,设为 每天一个日志文件了。。。 改为 : RollingFileAppender

    评论

报告相同问题?