[deploy] update Logger
This commit is contained in:
parent
d6f949d502
commit
f560a78fc8
|
|
@ -85,7 +85,7 @@ void LogProvider::Init() {}
|
|||
|
||||
void LogProvider::Flush() {}
|
||||
|
||||
void LogProvider::Write(LogLevel level, LogBuffer* msg)
|
||||
void LogProvider::Write(LogLevel level, const char* msg)
|
||||
{
|
||||
if (level < level_)
|
||||
return;
|
||||
|
|
@ -209,7 +209,7 @@ void ConsoleLogProvider::Init()
|
|||
{
|
||||
}
|
||||
|
||||
void ConsoleLogProvider::WriteMessage(LogLevel level, LogBuffer* msg)
|
||||
void ConsoleLogProvider::WriteMessage(LogLevel level, const char* msg)
|
||||
{
|
||||
if (level != LogLevel::Error)
|
||||
std::cout << GetColor(level) << msg << std::flush << ConsoleColorBrush<-1>;
|
||||
|
|
@ -217,7 +217,7 @@ void ConsoleLogProvider::WriteMessage(LogLevel level, LogBuffer* msg)
|
|||
std::cerr << GetColor(level) << msg << ConsoleColorBrush<-1>;
|
||||
|
||||
#if defined(KGE_PLATFORM_WINDOWS)
|
||||
::OutputDebugStringA(msg->GetRaw());
|
||||
::OutputDebugStringA(msg);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
@ -260,7 +260,7 @@ FileLogProvider::~FileLogProvider()
|
|||
|
||||
void FileLogProvider::Init() {}
|
||||
|
||||
void FileLogProvider::WriteMessage(LogLevel level, LogBuffer* msg)
|
||||
void FileLogProvider::WriteMessage(LogLevel level, const char* msg)
|
||||
{
|
||||
if (ofs_)
|
||||
{
|
||||
|
|
@ -509,8 +509,6 @@ Logger::Logger()
|
|||
|
||||
std::iostream& Logger::GetFormatedStream(LogLevel level, LogBuffer* buffer)
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(mutex_);
|
||||
|
||||
// reset buffer
|
||||
buffer->Reset();
|
||||
|
||||
|
|
@ -536,6 +534,8 @@ void Logger::Logf(LogLevel level, const char* format, ...)
|
|||
if (level < level_)
|
||||
return;
|
||||
|
||||
std::lock_guard<std::mutex> lock(mutex_);
|
||||
|
||||
va_list args = nullptr;
|
||||
va_start(args, format);
|
||||
|
||||
|
|
@ -586,8 +586,6 @@ void Logger::ResizeBuffer(size_t buffer_size)
|
|||
|
||||
void Logger::WriteToProviders(LogLevel level, LogBuffer* buffer)
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(mutex_);
|
||||
|
||||
// format footer
|
||||
if (formater_)
|
||||
{
|
||||
|
|
@ -598,7 +596,7 @@ void Logger::WriteToProviders(LogLevel level, LogBuffer* buffer)
|
|||
for (auto provider : providers_)
|
||||
{
|
||||
buffer->pubseekpos(0, std::ios_base::in);
|
||||
provider->Write(level, buffer);
|
||||
provider->Write(level, buffer->GetRaw());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -155,14 +155,14 @@ public:
|
|||
|
||||
virtual void Flush();
|
||||
|
||||
void Write(LogLevel level, LogBuffer* msg);
|
||||
void Write(LogLevel level, const char* msg);
|
||||
|
||||
void SetLevel(LogLevel level);
|
||||
|
||||
protected:
|
||||
LogProvider();
|
||||
|
||||
virtual void WriteMessage(LogLevel level, LogBuffer* msg) = 0;
|
||||
virtual void WriteMessage(LogLevel level, const char* msg) = 0;
|
||||
|
||||
protected:
|
||||
LogLevel level_;
|
||||
|
|
@ -184,7 +184,7 @@ public:
|
|||
void Flush() override;
|
||||
|
||||
protected:
|
||||
void WriteMessage(LogLevel level, LogBuffer* msg) override;
|
||||
void WriteMessage(LogLevel level, const char* msg) override;
|
||||
|
||||
private:
|
||||
typedef std::ostream&(*ConsoleColor)(std::ostream&);
|
||||
|
|
@ -208,7 +208,7 @@ public:
|
|||
void Flush() override;
|
||||
|
||||
protected:
|
||||
void WriteMessage(LogLevel level, LogBuffer* msg) override;
|
||||
void WriteMessage(LogLevel level, const char* msg) override;
|
||||
|
||||
private:
|
||||
std::ofstream ofs_;
|
||||
|
|
@ -319,6 +319,8 @@ inline void Logger::Log(LogLevel level, _Args&&... args)
|
|||
if (level < level_)
|
||||
return;
|
||||
|
||||
std::lock_guard<std::mutex> lock(mutex_);
|
||||
|
||||
// build message
|
||||
auto& stream = this->GetFormatedStream(level, &this->buffer_);
|
||||
(void)std::initializer_list<int>{ ((stream << ' ' << args), 0)... };
|
||||
|
|
|
|||
Loading…
Reference in New Issue