Qt 之日志框架 QLoggingCategory

背景:

开发工作中,工程往往有很多模块,每个模块的打印也是秘密麻麻,每次定位问题,如何过滤掉其他模块的日志,或者如何给日志设置种类?或者当你想跟踪Qt的源码,如何打开Qt源码中的输出呢?Qt早就给你了很便利的工具,今天我们就来学习下这个 QLoggingCategory


QLoggingCategory:

QLoggingCategory表示运行时由字符串标识的特定日志记录类别。可以将类别配置为启用或禁用每种消息类型的消息日志记录。

要检查消息类型是否已启用,请使用以下方法之一:isDebugEnabled()、IsInfo enabled()、isWarningEnabled()和isCriticalEnabled()。

QLoggingCategory可以控制打印输出类别和模块。方便在调试时,过滤掉不关心的打印信息

如何在自己的代码模块中使用?

1 添加头文件
#include <QLoggingCategory>
2 使用宏 Q_LOGGING_CATEGORY(lCustomLog, “CustomLog”)
Q_DECLARE_LOGGING_CATEGORY(lCustomLog)

Q_DECLARE_LOGGING_CATEGORY是声明,声明后,lCustomlog 可在其他模块中使用

Q_LOGGING_CATEGORY(testLog,"test.requests")
Q_LOGGING_CATEGORY(lCustomLog, "CustomLog")

其中Q_LOGGING_CATEGORY为宏定义

3 设置过滤规则
QLoggingCategory::setFilterRules("CustomLog.*.debug=false");

如上则,CustomLog的debug打印不输出;

4 通过qCDebug、qCWarning、qCInfo、qCCritical输出
qCDebug(lCustomLog) << "this is a log !";
qCWarning(lCustomLog) << "this is other" << lCustomLog().categoryName();

其他控制方式:

环境变量

QT_LOGGING_CONF :环境变量,指定日志过滤规则的文件,可以是相对路径或绝对路径:

`export QT_LOGGING_CONF=./LoggingCategory/logconfig.ini`

QT_LOGGING_RULES :环境变量,可以设置多个规则用逗号分割:

QT_LOGGING_RULES="*.debug=false;logA.loga.debug=false"
QT_LOGGING_RULES="*.debug=false;driver.usb.debug=true"

默认的Qt 日志配置文件为 qtlogging.ini

在这里插入图片描述
打开某个特定模块的日志输出,可追加
比如
qt.qpa.input.tablet=true

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
QTQt)是一种跨平台的C++图形用户界面(GUI)应用程序开发框架。它是一种开源且功能强大的框架,提供了丰富的组件和工具,可以高效地开发各种类型的应用程序。 Halcon是一种非常强大的机器视觉开发工具包,提供了多种功能和算法,用于图像处理、分析和识别。它支持各种操作系统和编程语言,并提供了易于使用的图形界面以及丰富的示例和文档。 QT Halcon视觉框架结合了QT和Halcon两个框架的优势。它使用QT作为界面开发的基础,使用Halcon进行图像处理和分析。这样的组合使得开发者可以利用QT的丰富功能和易用性来构建用户界面,并利用Halcon强大的视觉处理功能来实现各种图像分析和识别任务。 QT Halcon视觉框架的优势有以下几点: 1. 强大的视觉处理功能:Halcon提供了多种高级的图像处理和分析算法,可以满足各种复杂的应用需求。通过与QT的结合,可以实现图像处理与界面交互的无缝集成。 2. 跨平台支持:QT本身就是一个跨平台的框架,可以在多个操作系统上运行,而Halcon也支持多种操作系统。这使得QT Halcon视觉框架能够轻松地在不同平台上开发和部署应用程序。 3. 开发效率高:QT提供了丰富的组件和工具,可以快速地构建用户界面,而Halcon提供了丰富的示例和文档,能够帮助开发者快速上手。通过使用QT Halcon视觉框架,开发者可以以较少的代码实现复杂的视觉处理任务。 4. 界面友好:QT的界面设计非常美观和易于使用,可以提供良好的用户体验。通过QT Halcon视觉框架,开发者可以创建功能强大且界面友好的图像处理应用程序。 综上所述,QT Halcon视觉框架是一种强大而高效的图像处理开发工具,通过结合QT和Halcon的优势,可以实现高级的图像处理和分析任务,并提供良好的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值