diff --git a/debian/changelog b/debian/changelog index 197dd5a402d57dfd542066553d06447cd205ab04..54c08fadad50c70db3ed9e1095cad9b1147c1341 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +nfs-logtools (1.0.0-8) unstable; urgency=medium + + * fix: find filter error. + + -- ruizhe Thu, 19 Oct 2023 14:35:13 +0800 + nfs-logtools (1.0.0-7) unstable; urgency=medium * fix: update get home path method. diff --git a/logtools.cpp b/logtools.cpp index 800ebd83734fb37f0018f04a6c1a34ef855d76d8..c8ff735050e59efdeaf6ca0ff0b67067711f7c70 100644 --- a/logtools.cpp +++ b/logtools.cpp @@ -848,7 +848,7 @@ void Logtools::logtoolsFilterNearlyAllGetData() void Logtools::logtoolsFilterNearlyTodayGetData() { QDateTime currentDateTime = QDateTime::currentDateTime(); - QString currentDate = currentDateTime.toString("M-dd"); + QString currentDate = currentDateTime.toString("MM-dd"); QString dataTemp; QList > temp; temp.clear(); @@ -869,7 +869,7 @@ void Logtools::logtoolsFilterNearlyTodayGetData() void Logtools::logtoolsFilterNearlyThreeDayGetData() { - #define DATATIMESIZE 4 + #define DATATIMESIZE 5 QDateTime currentDateTime = QDateTime::currentDateTime(); QString currentYear = currentDateTime.toString("yyyy"); QString dataTemp; @@ -884,7 +884,7 @@ void Logtools::logtoolsFilterNearlyThreeDayGetData() if (dataTemp.size() == DATATIMESIZE) { //区分带年份和不带年份 dataTemp = currentYear + "-" + dataTemp; } - dataTempTime = QDateTime::fromString(dataTemp, "yyyy-M-dd"); + dataTempTime = QDateTime::fromString(dataTemp, "yyyy-MM-dd"); days = currentDateTime.daysTo(dataTempTime); if (days < NEARLYTHREEDAY) { break; @@ -897,7 +897,7 @@ void Logtools::logtoolsFilterNearlyThreeDayGetData() void Logtools::logtoolsFilterNearlyWeekGetData() { - #define DATATIMESIZE 4 + #define DATATIMESIZE 5 QDateTime currentDateTime = QDateTime::currentDateTime(); QString currentYear = currentDateTime.toString("yyyy"); QString dataTemp; @@ -912,7 +912,7 @@ void Logtools::logtoolsFilterNearlyWeekGetData() if (dataTemp.size() == DATATIMESIZE) { //区分带年份和不带年份 dataTemp = currentYear + "-" + dataTemp; } - dataTempTime = QDateTime::fromString(dataTemp, "yyyy-M-dd"); + dataTempTime = QDateTime::fromString(dataTemp, "yyyy-MM-dd"); days = currentDateTime.daysTo(dataTempTime); if (days < NEARLYWEEK) { break; @@ -925,7 +925,7 @@ void Logtools::logtoolsFilterNearlyWeekGetData() void Logtools::logtoolsFilterNearlyMonthGetData() { - #define DATATIMESIZE 4 + #define DATATIMESIZE 5 QDateTime currentDateTime = QDateTime::currentDateTime(); QString currentYear = currentDateTime.toString("yyyy"); QString dataTemp; @@ -940,7 +940,7 @@ void Logtools::logtoolsFilterNearlyMonthGetData() if (dataTemp.size() == DATATIMESIZE) { //区分带年份和不带年份 dataTemp = currentYear + "-" + dataTemp; } - dataTempTime = QDateTime::fromString(dataTemp, "yyyy-M-dd"); + dataTempTime = QDateTime::fromString(dataTemp, "yyyy-MM-dd"); days = currentDateTime.daysTo(dataTempTime); if (days < NEARLYMONTH) { break; @@ -953,7 +953,7 @@ void Logtools::logtoolsFilterNearlyMonthGetData() void Logtools::logtoolsFilterNearlyThreeMonthGetData() { - #define DATATIMESIZE 4 + #define DATATIMESIZE 5 QDateTime currentDateTime = QDateTime::currentDateTime(); QString currentYear = currentDateTime.toString("yyyy"); QString dataTemp; @@ -968,7 +968,7 @@ void Logtools::logtoolsFilterNearlyThreeMonthGetData() if (dataTemp.size() == DATATIMESIZE) { //区分带年份和不带年份 dataTemp = currentYear + "-" + dataTemp; } - dataTempTime = QDateTime::fromString(dataTemp, "yyyy-M-dd"); + dataTempTime = QDateTime::fromString(dataTemp, "yyyy-MM-dd"); days = currentDateTime.daysTo(dataTempTime); if (days < NEARLYTHREEMONTH) { break; diff --git a/parserlog.cpp b/parserlog.cpp index 6b22cd74c27e4dca5e1240c27e958f757f76cbaa..5a2378b78581c736cdfc2d8df6b6df08bd87df3b 100644 --- a/parserlog.cpp +++ b/parserlog.cpp @@ -29,6 +29,26 @@ void ParserLog::formatString(QString &str) str.replace(QRegExp("[\\s]+"), " "); } +void ParserLog::formatDate(QString &date) +{ + QDateTime tempDate; + date = date.trimmed(); + + switch (date.count('-')) { + case 1: + tempDate = QDateTime::fromString(date, "M-d"); + date = tempDate.toString("MM-dd"); + break; + case 2: + tempDate = QDateTime::fromString(date, "yyyy-M-d"); + date = tempDate.toString("yyyy-MM-dd"); + break; + default: + qDebug() << "Not formatted."; + break; + } +} + void ParserLog::reverseQList(QList > &str) { QList > temp; @@ -71,8 +91,8 @@ void ParserLog::parserSwitch(QList > &logList) //获取week的位置 weekPosition = lineContent.indexOf(QRegExp(weekMatch)); - const QString date = lineContent[weekPosition+4] + "-" + month[lineContent[weekPosition+1]] + "-" + lineContent[weekPosition+2]; - + QString date = lineContent[weekPosition+4] + "-" + month[lineContent[weekPosition+1]] + "-" + lineContent[weekPosition+2]; + formatDate(date); map.insert("日期", date); map.insert("时间", lineContent[weekPosition+3]); map.insert("动作", lineContent[0]); @@ -156,6 +176,7 @@ void ParserLog::parserSysInfo(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -227,6 +248,7 @@ void ParserLog::parserPackage(QList > &logList) status == "startup" || status == "trigproc") { continue; } + formatDate(lineContent[0]); map.insert("日期", lineContent[0]); map.insert("时间", lineContent[1]); map.insert("状态", lineContent[2]); @@ -282,6 +304,7 @@ void ParserLog::parserKernel(QList > &logList) formatString(temp); //去除多余的空格 lineContent = temp.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -304,6 +327,7 @@ void ParserLog::parserSoftwareUpdate(QList > &logList) description = ""; lineContent = it->split(" "); + formatDate(lineContent[1]); map.insert("日期", lineContent[1]); //清除时间中最后一个: lineContent[2].replace(QRegExp(":$"), ""); @@ -341,6 +365,7 @@ void ParserLog::parserPrint(QList > &logList) timeString = tempString.section(":", 1, 3);//取出00:09:09 +0800 date = dateString.split("/");//以/分割11/Aug/2022 dateString = date[2] + "-" + month[date[1]] + "-" + date[0]; + formatDate(dateString); map.insert("日期", dateString); time = timeString.split(" ");//以" "分割00:09:09 +0800 map.insert("时间", time[0]); @@ -486,6 +511,7 @@ void ParserLog::parserApplication(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -589,6 +615,7 @@ void ParserLog::parserDebug(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -642,6 +669,7 @@ void ParserLog::parserInfo(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -695,6 +723,7 @@ void ParserLog::parserNotice(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -748,6 +777,7 @@ void ParserLog::parserWarning(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -801,6 +831,7 @@ void ParserLog::parserError(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -854,6 +885,7 @@ void ParserLog::parserCritical(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -907,6 +939,7 @@ void ParserLog::parserAlert(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); @@ -960,6 +993,7 @@ void ParserLog::parserEmerg(QList > &logList) formatString(leftString); //去除多余的空格 lineContent = leftString.split(" "); date = month[lineContent[0]] + "-" + lineContent[1]; + formatDate(date); map.insert("日期", date); time = lineContent[2]; map.insert("时间", time); diff --git a/parserlog.h b/parserlog.h index a573db4e2e8385cfe0fa6e1160a9521ae7826f0f..ab60af937afc709b4bd2bb034e289ed855cbc8d6 100644 --- a/parserlog.h +++ b/parserlog.h @@ -10,6 +10,7 @@ #include #include #include +#include #include "getcontent.h" #define HOSTINDEX 3 @@ -21,6 +22,7 @@ class ParserLog : public QObject public: ParserLog(); static void formatString(QString &);//去除多余的空格 + static void formatDate(QString &); //格式化日期 static void reverseQList(QList > &); static void parserSwitch(QList > &); //wtmp