将 Qt 日志重定向,可以输出至文件、网络、数据库。将这些进行封装后以后就可以直接使用了。
工程地址:https://gitee.com/ALONE_WORK/QtCeShiXiangMu.git
为了以后在开发中使用简单,也不用另外再去做说明操作,所以就进一步封装。封装后可以选择将日志输出至文件、网络或者数据库。
使用步骤:
- 工程文件中添加网络、数据库模块。
// xxx.pro
QT += network sql
- 添加头文件。
#include "logger.h"
- 设置输出方式。
// 设置输出至文件
setLogMode(LM_FILE);
// DatabaseInfo info("127.0.0.1", "root", "", "log");
// setLogDatabaseInfo(info);
// setLogNetPort(8989);
// 设置日志文件保存目录
setLogFilePath(QApplication::applicationDirPath());
qInstallMessageHandler(log);
- 写日志。
qInfo() << "log message";
注意事项
日志写数据库
将日志输出至 MySQL 数据库时需要先创建数据表,创建表语句:
create table log(
logTime datetime primary key not null,
type varchar(16) not null,
file varchar(128) not null,
function varchar(128) not null,
line int not null,
message varchar(256) not null
);
工程中带有源码,个人需求自己修改即可。