log4cplus

官网地址:https://sourceforge.net/projects/log4cplus/files/log4cplus-stable/
GitHub地址:https://github.com/log4cplus/log4cplus
官方文档:https://sourceforge.net/p/log4cplus/wiki/Home/

项目使用文件:include和lib
链接:https://pan.baidu.com/s/1z98yPL9jKxbxgfkjT1jDKw?pwd=j5h4
提取码:j5h4

项目添加包含目录和库目录:$(ProjectDir)include,$(ProjectDir)lib
连接器-》输入-》附加依赖项添加log4cplusU.lib

#include <log4cplus/log4cplus.h>
log4cplus::Logger logger;
void InitFileLogger()
{
    QString qscurpath = QCoreApplication::applicationDirPath();
	QDateTime curDateTime = QDateTime::currentDateTime();
	QString strDate = curDateTime.toString("yyyyMMdd");
	QString logFile = qscurpath + "\\Log\\" + strDate + "\\Error.log";
	log4cplus::tstring strFileName = log4cplus::tstring(logFile.toStdWString());
	log4cplus::SharedFileAppenderPtr pRollingFileAppender(new log4cplus::RollingFileAppender(strFileName, 1024 * 1024 * 100, 5, true, true));
	std::locale lc("chs");
	pRollingFileAppender->imbue(lc);
	pRollingFileAppender->setLayout(std::unique_ptr<log4cplus::Layout>(new log4cplus::PatternLayout(L"%D%d{.%q} - %m%n")));
	logger = log4cplus::Logger::getInstance(LOG4CPLUS_TEXT("Error"));
	logger.setLogLevel(log4cplus::ERROR_LOG_LEVEL);
	// 将需要关联Logger的Appender添加到Logger上   
	logger.addAppender(log4cplus::SharedAppenderPtr(pRollingFileAppender.get()));
};

调用方法:

  QString str = "ceshi";
  logger.log(log4cplus::ERROR_LOG_LEVEL, log4cplus::tstring(str.toStdWString()), __FILE__, __LINE__);
posted @ 2024-05-27 14:26  小徐的小菜园  阅读(62)  评论(0)    收藏  举报