diff options
| author | Shauren <shauren.trinity@gmail.com> | 2023-01-08 21:16:53 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2023-01-08 21:16:53 +0100 |
| commit | d791afae1dfcfaf592326f787755ca32d629e4d3 (patch) | |
| tree | 54dc9916ede5800e110a2f0edff91530811fbdb8 /src/common/Logging | |
| parent | b6820a706f46f18b9652fcd9806e4bec8805d29d (diff) | |
Core/Logging: Switch from fmt::sprintf to fmt::format (c++20 standard compatible api)
Diffstat (limited to 'src/common/Logging')
| -rw-r--r-- | src/common/Logging/Appender.cpp | 2 | ||||
| -rw-r--r-- | src/common/Logging/AppenderConsole.cpp | 8 | ||||
| -rw-r--r-- | src/common/Logging/AppenderFile.cpp | 4 | ||||
| -rw-r--r-- | src/common/Logging/Log.cpp | 2 | ||||
| -rw-r--r-- | src/common/Logging/Log.h | 11 | ||||
| -rw-r--r-- | src/common/Logging/LogMessage.cpp | 2 |
6 files changed, 11 insertions, 18 deletions
diff --git a/src/common/Logging/Appender.cpp b/src/common/Logging/Appender.cpp index 77c4352b469..12e441b2ed8 100644 --- a/src/common/Logging/Appender.cpp +++ b/src/common/Logging/Appender.cpp @@ -61,7 +61,7 @@ void Appender::write(LogMessage* message) ss << message->getTimeStr() << ' '; if (flags & APPENDER_FLAGS_PREFIX_LOGLEVEL) - ss << Trinity::StringFormat("%-5s ", Appender::getLogLevelString(message->level)); + ss << Trinity::StringFormat("{:<5} ", Appender::getLogLevelString(message->level)); if (flags & APPENDER_FLAGS_PREFIX_LOGFILTERTYPE) ss << '[' << message->type << "] "; diff --git a/src/common/Logging/AppenderConsole.cpp b/src/common/Logging/AppenderConsole.cpp index fa146dc6960..460f2b6f500 100644 --- a/src/common/Logging/AppenderConsole.cpp +++ b/src/common/Logging/AppenderConsole.cpp @@ -47,8 +47,8 @@ void AppenderConsole::InitColors(std::string const& name, std::string_view str) std::vector<std::string_view> colorStrs = Trinity::Tokenize(str, ' ', false); if (colorStrs.size() != NUM_ENABLED_LOG_LEVELS) { - throw InvalidAppenderArgsException(Trinity::StringFormat("Log::CreateAppenderFromConfig: Invalid color data '%s' for console appender %s (expected %u entries, got %zu)", - std::string(str).c_str(), name.c_str(), NUM_ENABLED_LOG_LEVELS, colorStrs.size())); + throw InvalidAppenderArgsException(Trinity::StringFormat("Log::CreateAppenderFromConfig: Invalid color data '{}' for console appender {} (expected {} entries, got {})", + str, name, NUM_ENABLED_LOG_LEVELS, colorStrs.size())); } for (uint8 i = 0; i < NUM_ENABLED_LOG_LEVELS; ++i) @@ -57,8 +57,8 @@ void AppenderConsole::InitColors(std::string const& name, std::string_view str) _colors[i] = static_cast<ColorTypes>(*color); else { - throw InvalidAppenderArgsException(Trinity::StringFormat("Log::CreateAppenderFromConfig: Invalid color '%s' for log level %s on console appender %s", - std::string(colorStrs[i]).c_str(), EnumUtils::ToTitle(static_cast<LogLevel>(i)), name.c_str())); + throw InvalidAppenderArgsException(Trinity::StringFormat("Log::CreateAppenderFromConfig: Invalid color '{}' for log level {} on console appender {}", + colorStrs[i], EnumUtils::ToTitle(static_cast<LogLevel>(i)), name)); } } diff --git a/src/common/Logging/AppenderFile.cpp b/src/common/Logging/AppenderFile.cpp index f249f652a47..cf1aa0b7013 100644 --- a/src/common/Logging/AppenderFile.cpp +++ b/src/common/Logging/AppenderFile.cpp @@ -29,7 +29,7 @@ AppenderFile::AppenderFile(uint8 id, std::string const& name, LogLevel level, Ap _fileSize(0) { if (args.size() < 4) - throw InvalidAppenderArgsException(Trinity::StringFormat("Log::CreateAppenderFromConfig: Missing file name for appender %s", name.c_str())); + throw InvalidAppenderArgsException(Trinity::StringFormat("Log::CreateAppenderFromConfig: Missing file name for appender {}", name)); _fileName.assign(args[3]); @@ -51,7 +51,7 @@ AppenderFile::AppenderFile(uint8 id, std::string const& name, LogLevel level, Ap if (Optional<uint32> size = Trinity::StringTo<uint32>(args[5])) _maxFileSize = *size; else - throw InvalidAppenderArgsException(Trinity::StringFormat("Log::CreateAppenderFromConfig: Invalid size '%s' for appender %s", std::string(args[5]).c_str(), name.c_str())); + throw InvalidAppenderArgsException(Trinity::StringFormat("Log::CreateAppenderFromConfig: Invalid size '{}' for appender {}", args[5], name)); } _dynamicName = std::string::npos != _fileName.find("%s"); diff --git a/src/common/Logging/Log.cpp b/src/common/Logging/Log.cpp index d0cc289780d..19523e60cc7 100644 --- a/src/common/Logging/Log.cpp +++ b/src/common/Logging/Log.cpp @@ -276,7 +276,7 @@ std::string Log::GetTimestampStr() // SS seconds (2 digits 00-59) try { - return Trinity::StringFormat("%04d-%02d-%02d_%02d-%02d-%02d", + return Trinity::StringFormat("{:04}-{:02}-{:02}_{:02}-{:02}-{:02}", aTm.tm_year + 1900, aTm.tm_mon + 1, aTm.tm_mday, aTm.tm_hour, aTm.tm_min, aTm.tm_sec); } catch (std::exception const& ex) diff --git a/src/common/Logging/Log.h b/src/common/Logging/Log.h index cb4a0a61b74..f835031aa2f 100644 --- a/src/common/Logging/Log.h +++ b/src/common/Logging/Log.h @@ -69,13 +69,13 @@ class TC_COMMON_API Log bool SetLogLevel(std::string const& name, int32 level, bool isLogger = true); template<typename... Args> - void OutMessage(std::string_view filter, LogLevel const level, std::string_view fmt, Args&&... args) + void OutMessage(std::string_view filter, LogLevel const level, Trinity::FormatString<Args...> fmt, Args&&... args) { OutMessageImpl(filter, level, Trinity::StringFormat(fmt, std::forward<Args>(args)...)); } template<typename... Args> - void OutCommand(uint32 account, std::string_view fmt, Args&&... args) + void OutCommand(uint32 account, Trinity::FormatString<Args...> fmt, Args&&... args) { if (!ShouldLog("commands.gm", LOG_LEVEL_INFO)) return; @@ -132,19 +132,12 @@ class TC_COMMON_API Log #ifdef PERFORMANCE_PROFILING #define TC_LOG_MESSAGE_BODY(filterType__, level__, ...) ((void)0) #elif TRINITY_PLATFORM != TRINITY_PLATFORM_WINDOWS -void check_args(char const*, ...) ATTR_PRINTF(1, 2); -void check_args(std::string const&, ...); // This will catch format errors on build time #define TC_LOG_MESSAGE_BODY(filterType__, level__, ...) \ do { \ if (sLog->ShouldLog(filterType__, level__)) \ - { \ - if (false) \ - check_args(__VA_ARGS__); \ - \ sLog->OutMessage(filterType__, level__, __VA_ARGS__); \ - } \ } while (0) #else #define TC_LOG_MESSAGE_BODY(filterType__, level__, ...) \ diff --git a/src/common/Logging/LogMessage.cpp b/src/common/Logging/LogMessage.cpp index 5f10087d1f0..a9a99312db1 100644 --- a/src/common/Logging/LogMessage.cpp +++ b/src/common/Logging/LogMessage.cpp @@ -33,7 +33,7 @@ std::string LogMessage::getTimeStr(time_t time) { tm aTm; localtime_r(&time, &aTm); - return Trinity::StringFormat("%04d-%02d-%02d_%02d:%02d:%02d", aTm.tm_year + 1900, aTm.tm_mon + 1, aTm.tm_mday, aTm.tm_hour, aTm.tm_min, aTm.tm_sec); + return Trinity::StringFormat("{:04}-{:02}-{:02}_{:02}:{:02}:{:02}", aTm.tm_year + 1900, aTm.tm_mon + 1, aTm.tm_mday, aTm.tm_hour, aTm.tm_min, aTm.tm_sec); } std::string LogMessage::getTimeStr() const |
