QT log日志的使用
2017-07-25 17:51
951 查看
log日志是一个很关键的内容,在项目开发中很实用,接下来是基于QT5版本的log日志使用方法。
首先添加头文件,使用到的头文件有:
添加一个函数:
在main函数中注册qInstallMessageHandler:
下面打印log日志:
首先添加头文件,使用到的头文件有:
#include <QMutex> #include <QFile> #include <QTextStream> #include <QDateTime>
添加一个函数:
void outputMessage(QtMsgType type, const QMessageLogContext &context, const QString &msg) { static QMutex mutex; mutex.lock(); QString text; switch(type) { case QtDebugMsg: text = QString("Debug:"); break; case QtWarningMsg: text = QString("Warning:"); break; case QtCriticalMsg: text = QString("Critical:"); break; case QtFatalMsg: text = QString("Fatal:"); } QString context_info = QString("File:(%1) Line:(%2)").arg(QString(context.file)).arg(context.line); QString current_date_time = QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss ddd"); QString current_date = QString("(%1)").arg(current_date_time); QString message = QString("%1 %2 %3 %4").arg(text).arg(context_info).arg(msg).arg(current_date); QFile file("log.txt"); file.open(QIODevice::WriteOnly | QIODevice::Append); QTextStream text_stream(&file); text_stream << message << "\r\n"; file.flush(); file.close(); mutex.unlock(); }
在main函数中注册qInstallMessageHandler:
qInstallMessageHandler(outputMessage);
下面打印log日志:
//打印日志到文件中 qDebug("This is a debug message"); // qDebug:调试信息 qWarning("This is a warning message"); // qWarning:警告信息 qCritical("This is a critical message"); // qCritical:严重错误 qFatal("This is a fatal message"); // qFatal:致命错误(会报错,然后准备退出)
相关文章推荐
- Java使用Log日志系统(common-logging和log4j)
- 使用pt-query-digest分析mysql慢查询日志(mysql slow query log )
- Java使用Log日志系统(common-logging和log4j)
- android使用orm框架ormlite在控制台打印log日志信息
- 常用日志使用方式(slf4j,logback,log4j,common-log)
- android使用log输出日志注意
- 使用log4qt在qt项目中记录日志
- iptables学习与研究四(使用LOG记录失败日志)
- Java项目中使用log记录日志的一些总结
- 如何正确使用日志Log
- 代码实现获取log日志和logcat使用方法
- Git使用手册/Git教程:git log 查看git提交版本历史日志记录
- 关于Android写LOG日志到SD卡文件之microlog4android使用
- 在sql server 2008中使用xp_ReadErrorLog读取错误日志
- 使用Lumigent Log Explorer对SQL Server事务日志进行分析,对SQL Server事务、操作进行撤销
- 配置使用rsyslog+loganalyzer收集防火墙及交换机日志
- [绍棠] iOS-CocoaLumberjack(DDLog)日志框架使用
- 如何使用 RMAN 增量备份恢复 data guard log gap(日志断档)
- 使用外部表管理Oracle 告警日志(ALAERT_$SID.LOG)
- 使用microlog4android将Android Log日志写到SD卡文件中