From e606a443b7b8f400b853aab505c7e12266b20241 Mon Sep 17 00:00:00 2001 From: Michael Friedrich Date: Thu, 3 May 2018 11:35:29 +0200 Subject: [PATCH] Add support for config validation log timestamps This also adds implicit support for the startup.log generated from API config package validation, e.g. used by the Icinga Director. fixes #3455 --- icinga-app/icinga.cpp | 2 +- lib/base/logger.cpp | 9 +++++++-- lib/base/logger.hpp | 3 ++- lib/cli/daemoncommand.cpp | 3 +-- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/icinga-app/icinga.cpp b/icinga-app/icinga.cpp index 34aeddb69..c63c1c822 100644 --- a/icinga-app/icinga.cpp +++ b/icinga-app/icinga.cpp @@ -476,7 +476,7 @@ static int Main() &GlobalArgumentCompletion, true, autoindex); rc = 0; } else if (command) { - Logger::DisableTimestamp(true); + Logger::DisableTimestamp(); #ifndef _WIN32 if (command->GetImpersonationLevel() == ImpersonateRoot) { if (getuid() != 0) { diff --git a/lib/base/logger.cpp b/lib/base/logger.cpp index 1ff1d14c4..8c20231fb 100644 --- a/lib/base/logger.cpp +++ b/lib/base/logger.cpp @@ -173,9 +173,14 @@ LogSeverity Logger::GetConsoleLogSeverity() return m_ConsoleLogSeverity; } -void Logger::DisableTimestamp(bool disable) +void Logger::DisableTimestamp() { - m_TimestampEnabled = !disable; + m_TimestampEnabled = false; +} + +void Logger::EnableTimestamp() +{ + m_TimestampEnabled = true; } bool Logger::IsTimestampEnabled() diff --git a/lib/base/logger.hpp b/lib/base/logger.hpp index 1459e6efa..31ed6c821 100644 --- a/lib/base/logger.hpp +++ b/lib/base/logger.hpp @@ -84,7 +84,8 @@ public: static void DisableConsoleLog(); static void EnableConsoleLog(); static bool IsConsoleLogEnabled(); - static void DisableTimestamp(bool); + static void DisableTimestamp(); + static void EnableTimestamp(); static bool IsTimestampEnabled(); static void SetConsoleLogSeverity(LogSeverity logSeverity); diff --git a/lib/cli/daemoncommand.cpp b/lib/cli/daemoncommand.cpp index 5b34bc18d..d113dac11 100644 --- a/lib/cli/daemoncommand.cpp +++ b/lib/cli/daemoncommand.cpp @@ -183,8 +183,7 @@ std::vector DaemonCommand::GetArgumentSuggestions(const String& argument */ int DaemonCommand::Run(const po::variables_map& vm, const std::vector& ap) const { - if (!vm.count("validate")) - Logger::DisableTimestamp(false); + Logger::EnableTimestamp(); Log(LogInformation, "cli") << "Icinga application loader (version: " << Application::GetAppVersion()