建设网站项目概述,官方网站手机 优帮云,网页界面布局,网络广告的创意策略包括Log4Qt日志框架#xff08;1#xff09;- 引入到QT中 1 下载源码2 简介3 加入到自己的项目中3.1 使用库文件3.2 引入源文件 4 说明 1 下载源码
github#xff1a;https://github.com/MEONMedical/Log4Qt 官方(版本较老)#xff1a;https://sourceforge.net/projects/log4q… Log4Qt日志框架1- 引入到QT中 1 下载源码2 简介3 加入到自己的项目中3.1 使用库文件3.2 引入源文件 4 说明 1 下载源码
githubhttps://github.com/MEONMedical/Log4Qt 官方(版本较老)https://sourceforge.net/projects/log4qt/ CSDN0积分https://download.csdn.net/download/qq_40666149/88233421
2 简介
Log4Qt 是一个基于 Qt 的日志库它是 Apache log4j 的一个移植版本。Log4Qt 旨在为 Qt 应用程序提供一个灵活和可配置的日志框架。以下是 Log4Qt 的一些基本特性和信息
组件化Log4Qt 提供了各种组件如日志器Logger、日志级别、布局Layout、Appender追加器等使得其非常灵活和可扩展。多种日志级别它支持多种日志级别如 TRACE、DEBUG、INFO、WARN、ERROR 和 FATAL。多种输出目标Log4Qt 可以配置输出到多种目的地例如文件、控制台、数据库等。布局和格式化日志消息可以按照指定的格式进行格式化例如时间戳、日志级别、线程信息等。异步日志为了提高性能Log4Qt 支持异步日志记录。配置Log4Qt 可以通过配置文件或直接使用代码进行配置这意味着你可以在应用程序运行时更改日志配置。过滤器你可以配置过滤器来决定哪些日志消息应该被记录哪些不应该。滚动策略对于文件输出Log4Qt 支持滚动策略例如当日志文件达到一定大小时创建新的日志文件。和 Qt 的集成由于是为 Qt 设计的Log4Qt 能够很好地与 Qt 应用程序集成包括对 Qt 的线程、信号和槽的支持。可扩展性你可以通过继承现有组件或创建新的组件来扩展 Log4Qt 的功能。
3 加入到自己的项目中
3.1 使用库文件
如果你下载的是最新版的需要使用QT5.12及以上版本进行编译。具体信息可以阅读下载文件中的ChangeLog.md文件。
选择log4qt.pro文件进行打开按照你的需求直接编译即可。 编译生成内容如下 log4qt.dll、log4qt.lib这两个文件就是编译生成的库文件
log4qt.dll这是动态链接库文件。它包含库的实际代码。当你的应用程序启动时这个 .dll 文件会被加载到内存中并且它里面的功能会被你的应用程序使用。log4qt.lib这是一个导入库或称为链接库。它在链接时提供了.dll文件中的函数和数据的引用信息使得链接器知道如何在运行时查找这些函数和数据。当你的应用程序被编译并链接时它实际上是链接到这个 .lib 文件而不是 .dll 文件。
如何将这个库加入到自己的工程 我们随便新建一个项目如下图 找到你创建这个项目的位置并创建lib和bin文件夹将log4qt.lib文件放到lib文件夹中将log4qt.dll放入到bin中。如图所示 创建include文件夹将src中头文件加复制进去如图所示
在pro文件中加入
DESTDIR $$PWD/binINCLUDEPATH $$PWD/include
LIBS -L$$PWD/lib -llog4qt如图所示 测试使用 在main函数中
#include QApplication#include log4qt/logger.h
#include log4qt/basicconfigurator.hint main(int argc, char *argv[])
{QApplication a(argc, argv);Log4Qt::BasicConfigurator::configure();Log4Qt::Logger * log Log4Qt::Logger::rootLogger();log-debug(debug!);log-info(information!);log-warn(warn);return a.exec();
}编译运行生成如下
3.2 引入源文件
随便创建一个项目并将源码中的src下的log4qt文件夹复制到自己创建的项目下如图所示 将build.pri和g.pri也复制到log4qt文件下如图 在pro文件中加入
DESTDIR $$PWD/binINCLUDEPATH $$PWD/log4qt
include($$PWD/log4qt/log4qt.pri)在左侧的项目中可以看到 修改log4qt.pri文件加入
#加载模块
QT xml network concurrent sqlDEFINES LOG4QT_STATIC
include($$PWD/build.pri)
include($$PWD/g.pri)测试使用 在main函数中
#include QApplication#include log4qt/logger.h
#include log4qt/basicconfigurator.hint main(int argc, char *argv[])
{QApplication a(argc, argv);Log4Qt::BasicConfigurator::configure();Log4Qt::Logger * log Log4Qt::Logger::rootLogger();log-debug(debug!);log-info(information!);log-warn(warn);return a.exec();
}4 说明
上面两种方式都可以根据自己项目需要选择。我是直接引入源文件的。