QT日志级别设置

开发版本代码包含了大量的qDebug,

发布版本可能导致未知异常。

QLoggingCategory::setFilterRules用于设置日志过滤规则,从而控制日志的输出。

以下是一个完整的示例,展示如何通过设置日志过滤规则来禁用qDebug()输出:

cpp 复制代码
#include <QApplication>
#include <QLoggingCategory>
#include <QDebug>

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);

    // 设置日志级别为 QtInfoMsg,禁用 qDebug() 输出
    QLoggingCategory::setFilterRules("*.debug=false");

    // 测试 qDebug() 输出
    qDebug() << "This is a debug message"; // 这条消息不会显示
    qInfo() << "This is an info message";  // 这条消息会显示

    return app.exec();
}
  • QLoggingCategory::setFilterRules("*.debug=false");设置了日志过滤规则,将所有调试级别的日志(*.debug)设置为不输出(false)。

  • 这意味着所有通过qDebug()输出的消息都将被忽略,而不会显示在控制台中。

  • 测试日志输出

    • 使用qDebug()输出一条调试信息,这条信息不会显示。

    • 使用qInfo()输出一条信息级别的消息,这条信息会显示。

相关推荐
San813_LDD11 小时前
[QT]《Qt 开发避坑指南:随机数、容器操作与 VS 环境配置》
开发语言·qt
稷下元歌18 小时前
七天学会plc加机器视觉之AI 接入 外设模块开发全详细操作文档(全程配套视频按文档实操)
python·sql·qt·贪心算法·r语言·wpf·时序数据库
艾莉丝努力练剑18 小时前
【QT】界面优化:QSS
linux·运维·开发语言·网络·qt·计算机网络·udp
雪的季节19 小时前
Qt 自定义表头
开发语言·qt
艾莉丝努力练剑20 小时前
【QT】系统相关:QT文件
linux·服务器·开发语言·网络·qt·tcp/ip·计算机网络
爱思考的小伙1 天前
Qt-03:串口助手
qt
864记忆1 天前
远程执行指令-常用指令集
qt
郝学胜_神的一滴1 天前
Qt 高级开发 026:QTabWidget御道,从筑基到化境
c++·qt
走好每一步1 天前
2、VDK 使用QVTKOpenGLNativeWidget嵌入到QT窗体中
qt·vtk·三维图像
nnnnichijou2 天前
Qt 6.9 嵌入式 Linux 交叉编译全栈填坑指南(以树莓派5 AArch64 为例
qt·嵌入式·交叉编译·qml·树莓派5