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()输出一条信息级别的消息,这条信息会显示。

相关推荐
小灰灰搞电子1 小时前
Qt PDF模块详解
数据库·qt·pdf
ibuki_fuko1 小时前
QT/C++ 程序启动时检查程序是否已经启动
开发语言·c++·qt
深蓝海拓1 小时前
PySide6从0开始学习的笔记(五) 信号与槽
笔记·qt·学习·pyqt
淼淼7631 小时前
Qt工具栏+图页,图元支持粘贴复制,撤销,剪切,移动,删除
开发语言·c++·windows·qt
Kelvin_Ngan1 小时前
Qt包含QtCharts/QValueAxis时编译报错
开发语言·qt
葱卤山猪1 小时前
【Qt】心跳检测与粘包处理:打造稳定可靠的TCP Socket通信
开发语言·数据库·qt
世转神风-2 小时前
qt-lambda信号槽机制
开发语言·qt
YouEmbedded2 小时前
解码Qt布局管理器与样式表
qt·样式表·布局管理器
Blasit2 小时前
Qt C++ 编译 libevent静态库
开发语言·c++·qt
白完就是肥2 小时前
QT编程之TCP编程
开发语言·qt·tcp/ip