Only continue log level if line starts with whitespace (#4430)
This commit is contained in:
@@ -257,10 +257,7 @@ bool LaunchTask::parseXmlLogs(QString const& line, MessageLevel level)
|
||||
MessageLevel newLevel = messageLevelFromLine(msg);
|
||||
|
||||
if (newLevel == MessageLevel::Unknown)
|
||||
newLevel = LogParser::guessLevel(line);
|
||||
|
||||
if (newLevel == MessageLevel::Unknown)
|
||||
newLevel = model->previousLevel();
|
||||
newLevel = LogParser::guessLevel(line, model->previousLevel());
|
||||
|
||||
msg = censorPrivateInfo(msg);
|
||||
|
||||
|
||||
@@ -320,7 +320,7 @@ std::optional<LogParser::ParsedItem> LogParser::parseLog4J()
|
||||
throw std::runtime_error("unreachable: already verified this was a complete log4j:Event");
|
||||
}
|
||||
|
||||
MessageLevel LogParser::guessLevel(const QString& line)
|
||||
MessageLevel LogParser::guessLevel(const QString& line, MessageLevel previous)
|
||||
{
|
||||
static const QRegularExpression LINE_WITH_LEVEL("^\\[(?<timestamp>[0-9:]+)\\] \\[[^/]+/(?<level>[^\\]]+)\\]");
|
||||
auto match = LINE_WITH_LEVEL.match(line);
|
||||
@@ -343,11 +343,17 @@ MessageLevel LogParser::guessLevel(const QString& line)
|
||||
return MessageLevel::Debug;
|
||||
}
|
||||
|
||||
if (line.contains("Exception: ") || line.contains("Throwable: "))
|
||||
return MessageLevel::Error;
|
||||
|
||||
if (line.startsWith("Caused by: ") || line.startsWith("Exception in thread"))
|
||||
return MessageLevel::Error;
|
||||
|
||||
if (line.contains("overwriting existing"))
|
||||
return MessageLevel::Fatal;
|
||||
|
||||
if (line == "---- Minecraft Crash Report ----")
|
||||
return MessageLevel::Error;
|
||||
if (line.startsWith("\t") || line.startsWith(" "))
|
||||
return previous;
|
||||
|
||||
return MessageLevel::Unknown;
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ class LogParser {
|
||||
std::optional<Error> getError();
|
||||
|
||||
/// guess log level from a line of game log
|
||||
static MessageLevel guessLevel(const QString& line);
|
||||
static MessageLevel guessLevel(const QString& line, MessageLevel previous);
|
||||
|
||||
protected:
|
||||
std::optional<LogEntry> parseAttributes();
|
||||
|
||||
@@ -287,10 +287,7 @@ void OtherLogsPage::reload()
|
||||
if (!m_instance) {
|
||||
level = messageLevelFromLauncherLine(lineTemp);
|
||||
} else {
|
||||
level = LogParser::guessLevel(line);
|
||||
|
||||
if (level == MessageLevel::Unknown)
|
||||
level = last;
|
||||
level = LogParser::guessLevel(line, last);
|
||||
}
|
||||
|
||||
last = level;
|
||||
|
||||
@@ -126,10 +126,7 @@ class XmlLogParseTest : public QObject {
|
||||
last = entry.level;
|
||||
} else if (std::holds_alternative<LogParser::PlainText>(item)) {
|
||||
auto msg = std::get<LogParser::PlainText>(item).message;
|
||||
auto level = LogParser::guessLevel(msg);
|
||||
|
||||
if (level == MessageLevel::Unknown)
|
||||
level = last;
|
||||
auto level = LogParser::guessLevel(msg, last);
|
||||
|
||||
out.append(std::make_pair(level, msg));
|
||||
last = level;
|
||||
|
||||
@@ -46,166 +46,166 @@ WARN
|
||||
WARN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
WARN
|
||||
WARN
|
||||
INFO
|
||||
@@ -299,7 +299,7 @@ INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
UNKNOWN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
@@ -406,8 +406,8 @@ INFO
|
||||
WARN
|
||||
WARN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
@@ -591,7 +591,7 @@ INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
UNKNOWN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
@@ -626,20 +626,20 @@ INFO
|
||||
INFO
|
||||
INFO
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
INFO
|
||||
ERROR
|
||||
ERROR
|
||||
@@ -723,54 +723,54 @@ WARN
|
||||
INFO
|
||||
INFO
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
WARN
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
ERROR
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
@@ -820,27 +820,27 @@ WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
INFO
|
||||
UNKNOWN
|
||||
INFO
|
||||
UNKNOWN
|
||||
INFO
|
||||
ERROR
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
@@ -859,7 +859,7 @@ INFO
|
||||
INFO
|
||||
WARN
|
||||
INFO
|
||||
INFO
|
||||
UNKNOWN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
|
||||
@@ -427,8 +427,8 @@ INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
UNKNOWN
|
||||
UNKNOWN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
@@ -606,7 +606,7 @@ INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
UNKNOWN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
@@ -750,9 +750,9 @@ WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
WARN
|
||||
INFO
|
||||
UNKNOWN
|
||||
INFO
|
||||
UNKNOWN
|
||||
INFO
|
||||
ERROR
|
||||
INFO
|
||||
@@ -777,7 +777,7 @@ INFO
|
||||
INFO
|
||||
WARN
|
||||
INFO
|
||||
INFO
|
||||
UNKNOWN
|
||||
INFO
|
||||
INFO
|
||||
INFO
|
||||
|
||||
Reference in New Issue
Block a user