未验证 提交 bae7e11f 编写于 作者: 梦醒贰零壹柒's avatar 梦醒贰零壹柒 提交者: GitHub

Merge pull request #23 from mengxing2017/22-config-log

22 config log
# 设置要输出的日志的级别 - 注意: properties文件中的注释信息只能处于行首, 不要跟在行尾
log4j.rootLogger=DEBUG,stdout,logfile
### 输出到控制台, Java程序运行时的标准输出信息
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# 2019-05-25 19:09:46
log4j.appender.stdout.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] - %m%n
### 输出到日志文件
# 按天滚动生成, 不支持MaxFileSize, 而RollingFileAppender支持
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
# 项目的logs目录下
log4j.appender.logfile.File=/home/dev/.rms/log/rms.log
# Append 好像不支持
# log4j.appender.logfile.Append=true
# 输出INFO及以上的日志, 按日期滚动就无须配置单个日志文件的最大体积了
log4j.appender.logfile.Threshold=INFO
# log4j.appender.logfile.MaxFileSize=100MB
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] - %m%n
#ifndef LOG_H
#define LOG_H
#include <QApplication>
#include <QDir>
#include <QProcessEnvironment>
#include <QString>
#include "log4qt/propertyconfigurator.h"
class Log {
private:
Log4Qt::Logger* logger;
void initLogger();
public:
Log();
static Log* createLog();
Log4Qt::Logger* getLogger();
};
#endif // LOG_H
...@@ -35,7 +35,8 @@ HEADERS += \ ...@@ -35,7 +35,8 @@ HEADERS += \
$$PWD/include/db/create_table.h \ $$PWD/include/db/create_table.h \
$$PWD/include/db/excute_sql_file.h \ $$PWD/include/db/excute_sql_file.h \
$$PWD/include/db/init_database.h \ $$PWD/include/db/init_database.h \
$$PWD/include/db/manage_database.h $$PWD/include/db/manage_database.h \
$$PWD/include/log.h
SOURCES += \ SOURCES += \
$$PWD/sources/main/main.cpp \ $$PWD/sources/main/main.cpp \
...@@ -75,4 +76,5 @@ SOURCES += \ ...@@ -75,4 +76,5 @@ SOURCES += \
$$PWD/sources/db/excute_sql_file.cpp \ $$PWD/sources/db/excute_sql_file.cpp \
$$PWD/sources/db/create_table.cpp \ $$PWD/sources/db/create_table.cpp \
$$PWD/sources/db/init_database.cpp \ $$PWD/sources/db/init_database.cpp \
$$PWD/sources/db/manage_database.cpp $$PWD/sources/db/manage_database.cpp \
$$PWD/sources/log.cpp
#include "log.h"
#include "QDebug"
#include "log4qt/appender.h"
#include "log4qt/dailyfileappender.h"
#include "log4qt/logger.h"
Log::Log() { initLogger(); }
// 需确认静态成员函数是否只执行一次
Log* Log::createLog() {
Log* log = new Log();
return log;
}
Log4Qt::Logger* Log::getLogger() { return logger; }
void Log::initLogger() {
// 获取应用conf目录
QString confDir = QCoreApplication::applicationDirPath() + "/../conf";
Log4Qt::PropertyConfigurator::configure(confDir + "/log4qt.conf");
logger = Log4Qt::Logger::rootLogger();
}
#include <QApplication> #include <QApplication>
#include <QDir> #include <QDir>
#include <QFile> #include <QFile>
#include <QStandardPaths>
#include <QtDebug>
#include "db/init_database.h" #include "db/init_database.h"
#include "log.h"
#include "log4qt/logger.h"
#include "main/mainwindow.h" #include "main/mainwindow.h"
int main(int argc, char *argv[]) { int main(int argc, char *argv[]) {
QApplication a(argc, argv); QApplication a(argc, argv);
InitDatabase *initDb = new InitDatabase(); Log4Qt::Logger *logger = Log::createLog()->getLogger();
if (!initDb->initDb()) { logger->debug("debug");
initDb->~InitDatabase();
return -1; // InitDatabase *initDb = new InitDatabase();
} // if (!initDb->initDb()) {
initDb->~InitDatabase(); // initDb->~InitDatabase();
// return -1;
// }
// initDb->~InitDatabase();
// MainWindow w; // MainWindow w;
// w.show(); // w.show();
// return a.exec(); // return a.exec();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册