简介
DLogManager是DTK提供的日志管理器,提供了日志输出到文件和终端的功能。
为什么要用DLogManager?很简单,就是让DTK应用程序的日志输出标准化,日志有统一的目录、统一的回滚机制等。
使用
简单用法
编写DTK程序时,使用DLogManger很简单:
如果需要将日志输出到文件,只需在main函数中调用:
DLogManager::registerFileAppender();
类似的,如果需要将日志输出到文件,在main函数中调用:
DLogManager::registerConsoleAppender();
如果既要输出到文件,也要输出到终端,那两个都调用一下。
上面两个函数是DLogManager提供的静态函数。
效果
输出到终端
在终端中启动应用程序时,应用程序的qDebug等就会输出到终端上。
输出到文件
- 日志文件的路径是通过:
QStandardPaths::standardLocations(QStandardPaths::CacheLocation).at(0)
获取的,在UOS系统中,QStandardPaths::CacheLocation对应用户目录下的.cache目录中以应用程序名称为文件夹名称的路径; - 日志文件名称是通过:
QString("%1.log").arg(qApp->applicationName())
组合而来。 - 日志文件的大小,默认一个日志文件最大20M;
- 日志文件滚动存储,涉及日志滚动频率、滚动文件个数:
– 日志滚动频率,默认是一天,比如第一份日志文件是2020年1月9日12点0分0秒创建的,那到第二天2020年1月10日12点0分1秒时,就会把第一份日志备份,备份文件名添加当前的时间后缀,需要注意的是,如果当前日志文件写满20M,即使还没到滚动频率,那也会触发滚动
– 滚动文件个数,就是日志文件个数,默认是5,就是可以滚动5次,同时存在5个日志文件,如果再滚动一次,就会把最旧的日志文件删除。