This commit is contained in:
Timur A. Fatkhullin
2025-08-26 02:28:08 +03:00
parent 0295d93cd3
commit 8b1873b40b
6 changed files with 961 additions and 23 deletions

View File

@@ -24,7 +24,7 @@ public:
template <traits::mcc_range_of_input_char_range R = decltype(LOGGER_DEFAULT_FORMAT)>
MccSpdlogLogger(std::shared_ptr<spdlog::logger> logger, const R& pattern_range = LOGGER_DEFAULT_FORMAT)
: _loggerSPtr(logger), _currentLogPatternRange(), _currentLogPattern()
: _currentLogPatternRange(), _currentLogPattern(), _loggerSPtr(logger)
{
if (std::distance(pattern_range.begin(), pattern_range.end())) {
std::ranges::copy(
@@ -46,25 +46,52 @@ public:
virtual ~MccSpdlogLogger() = default;
void setLogLevel(loglevel_t log_level) { _loggerSPtr->set_level(log_level); }
void setLogLevel(loglevel_t log_level)
{
_loggerSPtr->set_level(log_level);
}
loglevel_t getLogLevel() const { return _loggerSPtr->level(); }
loglevel_t getLogLevel() const
{
return _loggerSPtr->level();
}
void logMessage(loglevel_t level, const std::string& msg) { _loggerSPtr->log(level, msg); }
void logMessage(loglevel_t level, const std::string& msg)
{
_loggerSPtr->log(level, msg);
}
// specialized for given level methods
void logCritical(const std::string& msg) { logMessage(spdlog::level::critical, msg); }
void logCritical(const std::string& msg)
{
logMessage(spdlog::level::critical, msg);
}
void logError(const std::string& msg) { logMessage(spdlog::level::err, msg); }
void logError(const std::string& msg)
{
logMessage(spdlog::level::err, msg);
}
void logWarn(const std::string& msg) { logMessage(spdlog::level::warn, msg); }
void logWarn(const std::string& msg)
{
logMessage(spdlog::level::warn, msg);
}
void logInfo(const std::string& msg) { logMessage(spdlog::level::info, msg); }
void logInfo(const std::string& msg)
{
logMessage(spdlog::level::info, msg);
}
void logDebug(const std::string& msg) { logMessage(spdlog::level::debug, msg); }
void logDebug(const std::string& msg)
{
logMessage(spdlog::level::debug, msg);
}
void logTrace(const std::string& msg) { logMessage(spdlog::level::trace, msg); }
void logTrace(const std::string& msg)
{
logMessage(spdlog::level::trace, msg);
}
template <traits::mcc_formattable... ArgTs>
void logMessage(spdlog::level::level_enum level, spdlog::format_string_t<ArgTs...> fmt, ArgTs&&... args)
@@ -149,7 +176,10 @@ protected:
_loggerSPtr->set_pattern(_currentLogPattern);
}
void addMarkToPatternIdx(const char* mark, size_t after_idx = 1) { addMarkToPatternIdx(std::string_view{mark}); }
void addMarkToPatternIdx(const char* mark, size_t after_idx = 1)
{
addMarkToPatternIdx(std::string_view{mark}, after_idx);
}
};
} // namespace mcc::utils