我在我的项目中使用 log4cplus 进行日志记录。
我创建了 logger.conf,我将在我的应用程序的开头加载它。
这是我的 logger.conf:
log4cplus.appender.Developer=log4cplus::RollingFileAppender
log4cplus.appender.Developer.DatePattern = ".yyyy-MM-dd"
log4cplus.appender.Developer.Schedule = HOURLY
log4cplus.appender.Developer.File=log/developer.log
log4cplus.appender.Developer.MaxFileSize=3MB
log4cplus.appender.Developer.MaxBackupIndex=10
log4cplus.appender.Developer.layout=log4cplus::PatternLayout
log4cplus.appender.Developer.layout.ContextPrinting=enabled
log4cplus.appender.Developer.layout.ConversionPattern=%D{%Y-%m-%d %H:%M:%S,%Q} [%t] %p - %m%n
log4cplus.appender.Developer.Threshold=TRACE
log4cplus.logger.DEVELOPER=TRACE, Developer
这就是我加载 logger.conf 的方式:
QString log_path = qApp->applicationDirPath() + "/log";
QDir().mkpath(log_path);
PropertyConfigurator logger(L"configs/logger.conf", Logger::getDefaultHierarchy());
logger.configure();
每当我想登录时,我都会使用以下行:
Logger::getInstance(L"DEVELOPER").log(INFO_LOG_LEVEL, L"..............");
我想知道两件事:
如何告诉 Log4Cplus 压缩备份日志?
在一些帖子中,我看到了这个回复:
我需要创建自己的
appender
,继承自然RollingFileAppender
后添加压缩步骤。如果可能的话,谁能告诉我怎么做,好吗?我不知道如何实现这一点。
如何为这些备份日志的名称添加模式?
目前,Log4Cplus 使我的备份如下:
developer.log.1 developer.log.2 developer.log.3 ...
我想添加日期和时间。