From f5122928882ebfb0f68bd7b17bc4c6fe95a7bbb6 Mon Sep 17 00:00:00 2001 From: "mykola.salomatin" Date: Tue, 10 Nov 2020 12:59:25 +0200 Subject: [MTX-3669] mPower Release 5.4: alertservice and libmts shall print log messages to stderr --- include/mts/MTS_Logger.h | 3 ++- src/MTS_Logger.cpp | 13 +++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/include/mts/MTS_Logger.h b/include/mts/MTS_Logger.h index b0beda9..e203199 100644 --- a/include/mts/MTS_Logger.h +++ b/include/mts/MTS_Logger.h @@ -117,7 +117,8 @@ namespace MTS { SYSLOG_ONLY, STDOUT_AND_FILE, STDOUT_AND_SYSLOG, - STDERR_ONLY + STDERR_ONLY, + STDERR_AND_SYSLOG }; static int getPrintLevel(); diff --git a/src/MTS_Logger.cpp b/src/MTS_Logger.cpp index eb879e3..1be2a0f 100644 --- a/src/MTS_Logger.cpp +++ b/src/MTS_Logger.cpp @@ -172,6 +172,19 @@ void Logger::printMessage(const int32_t& level, const char* label, const char* f } break; + case Logger::PrintMode::STDERR_AND_SYSLOG: { + if (level <= Logger::PrintLevel::TRACE_LEVEL) { + va_list argptr2; + va_copy(argptr2, argptr); + vsyslog(syslogPrintLevelConversion(level), format, argptr2); + va_end(argptr2); + } + fprintf(stderr, "%s|%s|", MTS::Text::time(MTS::System::timeMicros()).c_str(), label); + vfprintf(stderr, format, argptr); + fprintf(stderr, "\n"); + } + break; + case Logger::PrintMode::NO_PRINTING: default: break; -- cgit v1.2.3