41 lines
1.1 KiB
C++
41 lines
1.1 KiB
C++
#ifndef QSLOG_MANAGE_H
|
|
#define QSLOG_MANAGE_H
|
|
|
|
#include "QsLog.h"
|
|
#include <QCoreApplication>
|
|
#include <QDir>
|
|
#include <QProcessEnvironment>
|
|
#include <QString>
|
|
|
|
namespace QsLogManage {
|
|
|
|
using namespace QsLogging;
|
|
|
|
static void createLogger()
|
|
{
|
|
Logger& logger = Logger::instance();
|
|
logger.setLoggingLevel(TraceLevel);
|
|
|
|
QString logs_dir = QDir(qApp->applicationDirPath()).filePath("logs");
|
|
QDir logsDir(logs_dir);
|
|
if (!logsDir.exists()) {
|
|
logsDir.mkdir(logs_dir);
|
|
}
|
|
QString logFileName = QCoreApplication::applicationName() + QString(".log");
|
|
QString logFilePath = logsDir.filePath(logFileName);
|
|
MaxSizeBytes maxSize(1024 * 1024 * 10);
|
|
MaxOldLogCount count(10);
|
|
DestinationPtr fileDestination = DestinationFactory::MakeFileDestination(logFilePath, EnableLogRotation, maxSize, count);
|
|
logger.addDestination(fileDestination);
|
|
DestinationPtr debugDestination(QsLogging::DestinationFactory::MakeDebugOutputDestination());
|
|
logger.addDestination(debugDestination);
|
|
}
|
|
|
|
static void destoryLogger()
|
|
{
|
|
Logger::instance().destroyInstance();
|
|
}
|
|
|
|
}
|
|
#endif // QSLOG_MANAGE_H
|