diff options
Diffstat (limited to 'log.cpp')
| -rw-r--r-- | log.cpp | 27 |
1 files changed, 20 insertions, 7 deletions
@@ -255,7 +255,7 @@ void Logger::Log(BNLogLevel level, const char* fmt, ...) { va_list args; va_start(args, fmt); - PerformLog(GetSessionId(), level, GetName(), GetThreadId(), fmt, args); + PerformLog(GetSessionId(), level, GetName(), GetThreadId(), fmt::format("{}{}", GetIndent(), fmt).c_str(), args); va_end(args); } @@ -265,7 +265,7 @@ void Logger::LogTrace(const char* fmt, ...) #ifdef _DEBUG va_list args; va_start(args, fmt); - PerformLog(GetSessionId(), DebugLog, GetName(), GetThreadId(), fmt, args); + PerformLog(GetSessionId(), DebugLog, GetName(), GetThreadId(), fmt::format("{}{}", GetIndent(), fmt).c_str(), args); va_end(args); #endif } @@ -275,7 +275,7 @@ void Logger::LogDebug(const char* fmt, ...) { va_list args; va_start(args, fmt); - PerformLog(GetSessionId(), DebugLog, GetName(), GetThreadId(), fmt, args); + PerformLog(GetSessionId(), DebugLog, GetName(), GetThreadId(), fmt::format("{}{}", GetIndent(), fmt).c_str(), args); va_end(args); } @@ -284,7 +284,7 @@ void Logger::LogInfo(const char* fmt, ...) { va_list args; va_start(args, fmt); - PerformLog(GetSessionId(), InfoLog, GetName(), GetThreadId(), fmt, args); + PerformLog(GetSessionId(), InfoLog, GetName(), GetThreadId(), fmt::format("{}{}", GetIndent(), fmt).c_str(), args); va_end(args); } @@ -293,7 +293,7 @@ void Logger::LogWarn(const char* fmt, ...) { va_list args; va_start(args, fmt); - PerformLog(GetSessionId(), WarningLog, GetName(), GetThreadId(), fmt, args); + PerformLog(GetSessionId(), WarningLog, GetName(), GetThreadId(), fmt::format("{}{}", GetIndent(), fmt).c_str(), args); va_end(args); } @@ -302,7 +302,7 @@ void Logger::LogError(const char* fmt, ...) { va_list args; va_start(args, fmt); - PerformLog(GetSessionId(), ErrorLog, GetName(), GetThreadId(), fmt, args); + PerformLog(GetSessionId(), ErrorLog, GetName(), GetThreadId(), fmt::format("{}{}", GetIndent(), fmt).c_str(), args); va_end(args); } @@ -311,7 +311,7 @@ void Logger::LogAlert(const char* fmt, ...) { va_list args; va_start(args, fmt); - PerformLog(GetSessionId(), AlertLog, GetName(), GetThreadId(), fmt, args); + PerformLog(GetSessionId(), AlertLog, GetName(), GetThreadId(), fmt::format("{}{}", GetIndent(), fmt).c_str(), args); va_end(args); } @@ -398,6 +398,19 @@ void Logger::ResetIndent() } +string Logger::GetIndent() const +{ + char* indent = BNGetLoggerIndent(m_object); + if (!indent) + { + return ""; + } + string result = indent; + BNFreeString(indent); + return result; +} + + Ref<Logger> LogRegistry::CreateLogger(const std::string& loggerName, size_t sessionId) { return new Logger(BNLogCreateLogger(loggerName.c_str(), sessionId)); |
