Skip to content

Commit 95092e2

Browse files
authored
DebugGUI: assign proper log level to ROOT log messages printed in the GUI (AliceO2Group#13635)
1 parent 61a2269 commit 95092e2

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

Framework/GUISupport/src/FrameworkGUIDebugger.cxx

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,8 @@ ImVec4 colorForLogLevel(LogParsingHelpers::LogLevel logLevel)
7171
return PaletteHelpers::GREEN;
7272
case LogParsingHelpers::LogLevel::Debug:
7373
return PaletteHelpers::WHITE;
74+
case LogParsingHelpers::LogLevel::Alarm:
75+
return PaletteHelpers::YELLOW;
7476
case LogParsingHelpers::LogLevel::Warning:
7577
return PaletteHelpers::DARK_YELLOW;
7678
case LogParsingHelpers::LogLevel::Error:
@@ -140,6 +142,24 @@ void displayHistory(const DeviceInfo& info, DeviceControl& control)
140142
auto& line = info.history[ji];
141143
auto logLevel = info.historyLevel[ji];
142144

145+
// assign proper loglevel to ROOT log messages from stderr
146+
auto getLogLevelUnknown = [&line]() -> LogParsingHelpers::LogLevel {
147+
if (line.starts_with("Print in") || line.starts_with("Info in") || line.starts_with("[INFO]")) {
148+
return LogParsingHelpers::LogLevel::Info;
149+
} else if (line.starts_with("Warning in")) {
150+
return LogParsingHelpers::LogLevel::Warning;
151+
} else if (line.starts_with("Error in") || line.starts_with("SysError in")) {
152+
return LogParsingHelpers::LogLevel::Error;
153+
} else if (line.starts_with("Fatal in") || line.starts_with("*** Break ***")) {
154+
return LogParsingHelpers::LogLevel::Fatal;
155+
} else {
156+
return LogParsingHelpers::LogLevel::Unknown;
157+
}
158+
};
159+
if (logLevel == LogParsingHelpers::LogLevel::Unknown) {
160+
logLevel = getLogLevelUnknown();
161+
}
162+
143163
// Skip empty lines
144164
if (line.empty()) {
145165
ji = (ji + 1) % historySize;

0 commit comments

Comments
 (0)