From 1bac594a4a1ebdb17e5dd85d435cff8fb7b6e077 Mon Sep 17 00:00:00 2001 From: Stephane Janel Date: Thu, 4 Nov 2021 09:10:19 +0100 Subject: [PATCH] Centralize and make accessible default log level (to level::info) --- include/spdlog/cfg/helpers-inl.h | 2 +- include/spdlog/common.h | 10 ++++++---- include/spdlog/details/registry.h | 2 +- include/spdlog/logger.h | 2 +- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/include/spdlog/cfg/helpers-inl.h b/include/spdlog/cfg/helpers-inl.h index 675a13af..ca11874b 100644 --- a/include/spdlog/cfg/helpers-inl.h +++ b/include/spdlog/cfg/helpers-inl.h @@ -88,7 +88,7 @@ SPDLOG_INLINE void load_levels(const std::string &input) auto key_vals = extract_key_vals_(input); std::unordered_map levels; - level::level_enum global_level = level::info; + level::level_enum global_level = level::kDefault; bool global_level_found = false; for (auto &name_level : key_vals) diff --git a/include/spdlog/common.h b/include/spdlog/common.h index ed0ab46c..2b337fdd 100644 --- a/include/spdlog/common.h +++ b/include/spdlog/common.h @@ -152,10 +152,6 @@ using level_t = std::atomic; #define SPDLOG_LEVEL_CRITICAL 5 #define SPDLOG_LEVEL_OFF 6 -#if !defined(SPDLOG_ACTIVE_LEVEL) -# define SPDLOG_ACTIVE_LEVEL SPDLOG_LEVEL_INFO -#endif - // Log level enum namespace level { enum level_enum @@ -178,6 +174,12 @@ enum level_enum #define SPDLOG_LEVEL_NAME_CRITICAL spdlog::string_view_t("critical", 8) #define SPDLOG_LEVEL_NAME_OFF spdlog::string_view_t("off", 3) +static constexpr level_enum kDefault = info; + +#if !defined(SPDLOG_ACTIVE_LEVEL) +# define SPDLOG_ACTIVE_LEVEL SPDLOG_LEVEL_INFO +#endif + #if !defined(SPDLOG_LEVEL_NAMES) # define SPDLOG_LEVEL_NAMES \ { \ diff --git a/include/spdlog/details/registry.h b/include/spdlog/details/registry.h index 97473ea3..0cba459a 100644 --- a/include/spdlog/details/registry.h +++ b/include/spdlog/details/registry.h @@ -97,7 +97,7 @@ private: std::unordered_map> loggers_; log_levels log_levels_; std::unique_ptr formatter_; - spdlog::level::level_enum global_log_level_ = level::info; + spdlog::level::level_enum global_log_level_ = level::kDefault; level::level_enum flush_level_ = level::off; err_handler err_handler_; std::shared_ptr tp_; diff --git a/include/spdlog/logger.h b/include/spdlog/logger.h index eea0afc2..da1f4abd 100644 --- a/include/spdlog/logger.h +++ b/include/spdlog/logger.h @@ -318,7 +318,7 @@ public: protected: std::string name_; std::vector sinks_; - spdlog::level_t level_{level::info}; + spdlog::level_t level_{level::kDefault}; spdlog::level_t flush_level_{level::off}; err_handler custom_err_handler_{nullptr}; details::backtracer tracer_;