diff options
author | Naios <naios-dev@live.de> | 2015-03-28 17:11:30 +0100 |
---|---|---|
committer | Naios <naios-dev@live.de> | 2015-03-28 17:12:24 +0100 |
commit | a2e280c8a8478bbe0652c1850b1a435abba79f93 (patch) | |
tree | 29551949e0765b59f94f9e90a90385be7740f419 | |
parent | 9b0b1185e4f9eb48cd16237f7622204687b9c01a (diff) |
Core/Log: Improve creation of log prefixes.
* this also fixes non whitespace seperated timestamps in logs after 95ebe4f31cba6b4772cfd19 @Aokromes
* remove an unnecessary stringstream in Log::outCommand
* delete copy constructor of LogMessage to prevent unwanted copies
-rw-r--r-- | src/server/shared/Logging/Appender.cpp | 19 | ||||
-rw-r--r-- | src/server/shared/Logging/Appender.h | 3 | ||||
-rw-r--r-- | src/server/shared/Logging/Log.h | 4 |
3 files changed, 7 insertions, 19 deletions
diff --git a/src/server/shared/Logging/Appender.cpp b/src/server/shared/Logging/Appender.cpp index ca40a857419..ba23d879ec2 100644 --- a/src/server/shared/Logging/Appender.cpp +++ b/src/server/shared/Logging/Appender.cpp @@ -80,26 +80,13 @@ void Appender::write(LogMessage* message) std::ostringstream ss; if (flags & APPENDER_FLAGS_PREFIX_TIMESTAMP) - ss << message->getTimeStr(); + ss << message->getTimeStr() << ' '; if (flags & APPENDER_FLAGS_PREFIX_LOGLEVEL) - { - if (ss.rdbuf()->in_avail() == 0) - ss << ' '; - - ss << Trinity::StringFormat("%-5s", Appender::getLogLevelString(message->level)); - } + ss << Trinity::StringFormat("%-5s ", Appender::getLogLevelString(message->level)); if (flags & APPENDER_FLAGS_PREFIX_LOGFILTERTYPE) - { - if (ss.rdbuf()->in_avail() == 0) - ss << ' '; - - ss << '[' << message->type << ']'; - } - - if (ss.rdbuf()->in_avail() == 0) - ss << ' '; + ss << '[' << message->type << "] "; message->prefix = std::move(ss.str()); _write(message); diff --git a/src/server/shared/Logging/Appender.h b/src/server/shared/Logging/Appender.h index 38c45b3bcf1..73af351e41d 100644 --- a/src/server/shared/Logging/Appender.h +++ b/src/server/shared/Logging/Appender.h @@ -62,6 +62,9 @@ struct LogMessage : level(_level), type(_type), text(std::forward<std::string>(_text)), mtime(time(NULL)) { } + LogMessage(LogMessage const& /*other*/) = delete; + LogMessage& operator=(LogMessage const& /*other*/) = delete; + static std::string getTimeStr(time_t time); std::string getTimeStr(); diff --git a/src/server/shared/Logging/Log.h b/src/server/shared/Logging/Log.h index 20d83d2dcf0..d4653960b15 100644 --- a/src/server/shared/Logging/Log.h +++ b/src/server/shared/Logging/Log.h @@ -75,9 +75,7 @@ class Log std::unique_ptr<LogMessage> msg(new LogMessage(LOG_LEVEL_INFO, "commands.gm", std::move(Trinity::StringFormat(fmt, args...)))); - std::ostringstream ss; - ss << account; - msg->param1 = ss.str(); + msg->param1 = std::to_string(account); write(std::move(msg)); } |