• 大小: 300KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-15
  • 语言: C/C++
  • 标签: log4qt  qt日志  log4j  

资源简介

基于log4j进行移植到qt上使用的一个日志系统,log4qt是一个开源的C++日志系统。

资源截图

代码片段和文件信息

#include “qblog4qt.h“
#include 
#include 
#include 
#include 
#include 

QBLog4Qt::QBLog4Qt(Qobject *parent) :
    Qobject(parent)
{
    QDir mkdir(QStandardPaths::writableLocation(QStandardPaths::DataLocation));
    if(!mkdir.exists()) mkdir.mkdir(QStandardPaths::writableLocation(QStandardPaths::DataLocation));

    //:/Users/Dione/AppData/Local/log4Test/log4qt.log
    QString outpath = QStandardPaths::writableLocation(QStandardPaths::DataLocation) + “/log4qt.log“;
    QString configPath = QApplication::applicationDirPath() + “/log4qt.conf“;
    if(!QFile::exists(configPath)){//不存在配置文件 创建默认配配置文件
        QSettings configSet(configPathQSettings::IniFormat);
        configSet.setIniCodec(“UTF-8“);
        configSet.setValue(“log4j.rootLogger“QStringList()<<“INFO“<<“rollingFile“);
        configSet.setValue(“log4j.additivity.org.apache““true“);
        configSet.setValue(“log4j.appender.rollingFile““Log4Qt::RollingFileAppender“);
        configSet.setValue(“log4j.appender.rollingFile.ImmediateFlush““true“);
        configSet.setValue(“log4j.appender.rollingFile.AppendFile““true“);
        configSet.setValue(“log4j.appender.rollingFile.File“outpath);
        configSet.setValue(“log4j.appender.rollingFile.MaxFileSize““4096KB“);
        configSet.setValue(“log4j.appender.rollingFile.MaxBackupIndex““50“);
        configSet.setValue(“log4j.appender.rollingFile.layout““Log4Qt::PatternLayout“);
        configSet.setValue(“log4j.appender.rollingFile.layout.ConversionPattern““[%p] %d --> %m %n%n“);
        configSet.sync();
    }else{// 存在修改日志保存路径
        QSettings configSet(configPathQSettings::IniFormat);
        configSet.setIniCodec(“UTF-8“);
        configSet.setValue(“log4j.appender.rollingFile.File“outpath);
        configSet.sync();
    }

    Log4Qt::PropertyConfigurator::configure(configPath);
    logger()->info(“start used log4qt!“);
}

QBLog4Qt::~QBLog4Qt()
{
    logger()->info(“stop used log4qt!“);
}

QBLog4Qt *QBLog4Qt::instance()
{
    static QBLog4Qt obj;
    return &obj;
}


QBLog4Helper::QBLog4Helper(const char *fileName int lineNumber const char *functionName)
       : version(1)
        line(lineNumber)
        file(fileName)
        function(functionName)
{
}

void QBLog4Helper::writelogToLocal(QBLog4Helper::LogType logtype const QString &log)
{
    QString threadText = QStringLiteral(“0x%1“).arg(quintptr(QThread::currentThreadId()));
    QString filter = QString(“[file(%1)] [func(%2) line(%3) pid(%4)] “).arg(file).arg(function).arg(line).arg(threadText);

    switch (logtype) {
    case LGDebugMsg: QBLog4Qt::instance()->debug(filter+log);
        break;
    case LGInfoMsg: QBLog4Qt::instance()->info(filter+log);
        break;
    case LGWarningMsg: QBLog4Qt::instance()->warn(filter+log);
        break;
    case LGErrorMsg: QBLog4Qt::instance()->error(filter+log);
        break;
    case L

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3956  2018-08-30 08:54  log4Qt\log4Qt\log4qt\appender.h

     文件       7135  2018-08-30 08:54  log4Qt\log4Qt\log4qt\appenderskeleton.cpp

     文件       7188  2018-08-30 08:54  log4Qt\log4Qt\log4qt\appenderskeleton.h

     文件       3327  2018-08-30 08:54  log4Qt\log4Qt\log4qt\basicconfigurator.cpp

     文件       2547  2018-08-30 08:54  log4Qt\log4Qt\log4qt\basicconfigurator.h

     文件       5149  2018-08-30 08:54  log4Qt\log4Qt\log4qt\consoleappender.cpp

     文件       4863  2018-08-30 08:54  log4Qt\log4Qt\log4qt\consoleappender.h

     文件      12308  2018-08-30 08:54  log4Qt\log4Qt\log4qt\dailyrollingfileappender.cpp

     文件       6687  2018-08-30 08:54  log4Qt\log4Qt\log4qt\dailyrollingfileappender.h

     文件       8957  2018-08-30 08:54  log4Qt\log4Qt\log4qt\fileappender.cpp

     文件       7499  2018-08-30 08:54  log4Qt\log4Qt\log4qt\fileappender.h

     文件       3121  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\classlogger.cpp

     文件       3525  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\classlogger.h

     文件       3877  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\configuratorhelper.cpp

     文件       7024  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\configuratorhelper.h

     文件       9465  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\datetime.cpp

     文件       6836  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\datetime.h

     文件      16336  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\factory.cpp

     文件      17604  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\factory.h

     文件       5556  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\initialisationhelper.cpp

     文件      18067  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\initialisationhelper.h

     文件       9703  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\logerror.cpp

     文件      17114  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\logerror.h

     文件       2113  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\logobject.cpp

     文件       6087  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\logobject.h

     文件       1944  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\logobjectptr.cpp

     文件       5091  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\logobjectptr.h

     文件      10185  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\optionconverter.cpp

     文件       5831  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\optionconverter.h

     文件      26107  2018-08-30 08:54  log4Qt\log4Qt\log4qt\helpers\patternformatter.cpp

............此处省略72个文件信息

评论

共有 条评论