diff options
author | Faq <ainarsh@gmail.com> | 2012-08-21 10:58:15 +0300 |
---|---|---|
committer | Faq <ainarsh@gmail.com> | 2012-08-21 10:58:15 +0300 |
commit | 291b0899c503bc7bf7d8463a984fd8b638867eda (patch) | |
tree | 7a76f1ec88a89adf5d79bf8e1ba670baa8d56745 /src/server/shared/Logging/AppenderFile.cpp | |
parent | c400923a1a96e458ca8b33b6979abc6b344cb41f (diff) | |
parent | 542521a026031764ddd98518e7f5bdab91bc0ebb (diff) |
Merge remote-tracking branch 'upstream/master' into SpellMasks_0
Diffstat (limited to 'src/server/shared/Logging/AppenderFile.cpp')
-rw-r--r-- | src/server/shared/Logging/AppenderFile.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/server/shared/Logging/AppenderFile.cpp b/src/server/shared/Logging/AppenderFile.cpp index cb875240c46..67adff39aae 100644 --- a/src/server/shared/Logging/AppenderFile.cpp +++ b/src/server/shared/Logging/AppenderFile.cpp @@ -18,16 +18,16 @@ #include "AppenderFile.h" #include "Common.h" -AppenderFile::AppenderFile(uint8 id, std::string const& name, LogLevel level, const char* _filename, const char* _logDir, const char* _mode, bool _backup) - : Appender(id, name, APPENDER_FILE, level) +AppenderFile::AppenderFile(uint8 id, std::string const& name, LogLevel level, const char* _filename, const char* _logDir, const char* _mode, AppenderFlags _flags) + : Appender(id, name, APPENDER_FILE, level, _flags) , filename(_filename) , logDir(_logDir) , mode(_mode) - , backup(_backup) { - dynamicName = std::string::npos != filename.find("%u"); - if (!dynamicName) - logfile = OpenFile(_filename, _mode, _backup); + dynamicName = std::string::npos != filename.find("%s"); + backup = _flags & APPENDER_FLAGS_MAKE_FILE_BACKUP; + + logfile = !dynamicName ? OpenFile(_filename, _mode, backup) : NULL; } AppenderFile::~AppenderFile() @@ -44,18 +44,20 @@ void AppenderFile::_write(LogMessage& message) if (dynamicName) { char namebuf[TRINITY_PATH_MAX]; - snprintf(namebuf, TRINITY_PATH_MAX, filename.c_str(), message.param1); + snprintf(namebuf, TRINITY_PATH_MAX, filename.c_str(), message.param1.c_str()); logfile = OpenFile(namebuf, mode, backup); } if (logfile) { - fprintf(logfile, "%s %-5s [%-15s] %s", message.getTimeStr().c_str(), Appender::getLogLevelString(message.level), Appender::getLogFilterTypeString(message.type), message.text.c_str()); - + fprintf(logfile, "%s%s", message.prefix.c_str(), message.text.c_str()); fflush(logfile); if (dynamicName) + { fclose(logfile); + logfile = NULL; + } } } |