qt 下log4cplus的使用

log4cplus的库版本在windows下的使用是必须和vs版本对应的,所以这边吧编译过程都省略吧!

直接上代码吧!

MyLogger.h

#pragma once
#include<iostream>
#include<string>
#include <log4Cplus/logger.h>
#include <log4Cplus/configurator.h>
#include <log4Cplus/layout.h>
#include <log4Cplus/loggingmacros.h>
#include <log4Cplus/helpers/stringhelper.h>

#define MY_LOG_FILE "./logconfig.properities"

using namespace std;
using namespace log4cplus;
using namespace log4cplus::helpers;

class MyLogger
{
public:
	static MyLogger* getInstance();
	Logger logger;
private:
	MyLogger();
	~MyLogger();
	static MyLogger* my_logger;
};


MyLogger.cpp

#include "stdafx.h"
#include "MyLogger.h"

MyLogger* MyLogger::my_logger = NULL;

MyLogger::MyLogger()
{
	log4cplus::initialize();
	PropertyConfigurator::doConfigure(LOG4CPLUS_TEXT(MY_LOG_FILE));
	logger = Logger::getRoot();
}


MyLogger::~MyLogger()
{
	if (my_logger)
	{
		delete my_logger;
		my_logger = NULL;
	}

}

MyLogger* MyLogger::getInstance()
{
	if (my_logger == NULL)
	{
		my_logger = new MyLogger;
	}
	return my_logger;
}



使用方法
#include "MyLogger.h" 

#pragma comment(lib,"log4cplusU.lib")
MyLogger * pMyLogger = NULL;
pMyLogger = MyLogger::getInstance();
LOG4CPLUS_TRACE(pMyLogger->logger, "WinMain");

配置文件如下
log4cplus.rootLogger=TRACE,APPNDER_FILE

#设置日志追加到文件尾
log4cplus.appender.APPNDER_FILE=log4cplus::RollingFileAppender  

log4cplus.appender.APPNDER_FILE.MaxFileSize=100MB
log4cplus.appender.APPNDER_FILE.MaxBackupIndex=1
#设置输出日志路径
log4cplus.appender.APPNDER_FILE.File= Mylogger.log
log4cplus.appender.APPNDER_FILE.layout=log4cplus::PatternLayout

#设置日志打印格式
log4cplus.appender.APPNDER_FILE.layout.ConversionPattern=%D:%d{%q} %p %t %l %m %n

#设置日志级别范围
log4cplus.appender.APPNDER_FILE.filters.1=log4cplus::spi::LogLevelRangeFilter
log4cplus.appender.APPNDER_FILE.filters.1.LogLevelMin=DEBUG
log4cplus.appender.APPNDER_FILE.filters.1.LogLevelMax=FATAL
log4cplus.appender.APPNDER_FILE.filters.1.AcceptOnMatch=true
log4cplus.appender.APPNDER_FILE.filters.2=log4cplus::spi::DenyAllFilter




  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
QT是一个跨平台的C++图形用户界面应用程序开发框架,而log4cplus是一个C++语言的日志管理工具。这两个工具可以很好地结合使用,方便开发人员进行日志记录和管理。 qt log4cplus库是为了在QT应用程序中实现日志功能而开发的一个工具库。它提供了一组函数和类,方便开发人员进行日志记录、输出和管理。 使用qt log4cplus的第一步是引入库和头文件。可以从log4cplus的官方网站下载源代码,然后将其编译成动态链接库。然后,在QT项目中引入库文件,并在代码中包含对应的头文件。 接下来,可以根据需要配置log4cplus的参数,如日志的格式、输出位置等。可以在代码中使用log4cplus的函数和宏来进行日志记录,比如LOG_DEBUG、LOG_INFO、LOG_ERROR等。这些宏可以设置日志的级别,并输出相应的日志信息。可以使用不同的日志级别来定义不同类型的日志,如调试日志、信息日志、错误日志等。 本工具库还支持日志的分级输出和动态修改日志级别。开发人员可以根据具体需求灵活地配置日志输出的级别,使其只输出某些级别的日志,从而减少不必要的信息输出,提高日志记录效率。 总之,qt log4cplus是一个方便开发人员进行日志记录和管理的工具库,可以和QT框架很好地结合使用。它提供了丰富的日志记录和输出接口,支持日志的分级输出和动态修改日志级别,方便开发人员进行调试和排查问题。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值