diff options
author | joschiwald <joschiwald@online.de> | 2012-08-04 02:55:11 +0100 |
---|---|---|
committer | Nay <dnpd.dd@gmail.com> | 2012-08-04 02:55:11 +0100 |
commit | af92a36e889d5fc1a7575300e7652d111ccf87d9 (patch) | |
tree | e5b15ee441f60a1b083bae9a27646dc46164c694 /src/server/shared/Logging | |
parent | d1b10082a21398b58cce3615efc0b89d303ba5f1 (diff) |
Core/Logging: Use config LogsDir to save log files (re-added)
Diffstat (limited to 'src/server/shared/Logging')
-rw-r--r-- | src/server/shared/Logging/AppenderFile.cpp | 5 | ||||
-rw-r--r-- | src/server/shared/Logging/AppenderFile.h | 3 | ||||
-rwxr-xr-x | src/server/shared/Logging/Log.cpp | 2 |
3 files changed, 6 insertions, 4 deletions
diff --git a/src/server/shared/Logging/AppenderFile.cpp b/src/server/shared/Logging/AppenderFile.cpp index 93c02913aeb..cb875240c46 100644 --- a/src/server/shared/Logging/AppenderFile.cpp +++ b/src/server/shared/Logging/AppenderFile.cpp @@ -18,9 +18,10 @@ #include "AppenderFile.h" #include "Common.h" -AppenderFile::AppenderFile(uint8 id, std::string const& name, LogLevel level, const char* _filename, const char* _mode, bool _backup) +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) , filename(_filename) + , logDir(_logDir) , mode(_mode) , backup(_backup) { @@ -67,5 +68,5 @@ FILE* AppenderFile::OpenFile(std::string const &filename, std::string const &mod newName.append(LogMessage::getTimeStr(time(NULL))); rename(filename.c_str(), newName.c_str()); // no error handling... if we couldn't make a backup, just ignore } - return fopen(filename.c_str(), mode.c_str()); + return fopen((logDir + filename).c_str(), mode.c_str()); } diff --git a/src/server/shared/Logging/AppenderFile.h b/src/server/shared/Logging/AppenderFile.h index bbc500f9e76..8d8b0c43a54 100644 --- a/src/server/shared/Logging/AppenderFile.h +++ b/src/server/shared/Logging/AppenderFile.h @@ -23,7 +23,7 @@ class AppenderFile: public Appender { public: - AppenderFile(uint8 _id, std::string const& _name, LogLevel level, const char* filename, const char* mode, bool backup); + AppenderFile(uint8 _id, std::string const& _name, LogLevel level, const char* filename, const char* logDir, const char* mode, bool backup); ~AppenderFile(); FILE* OpenFile(std::string const& _name, std::string const& _mode, bool _backup); @@ -31,6 +31,7 @@ class AppenderFile: public Appender void _write(LogMessage& message); FILE* logfile; std::string filename; + std::string logDir; std::string mode; bool dynamicName; bool backup; diff --git a/src/server/shared/Logging/Log.cpp b/src/server/shared/Logging/Log.cpp index 17c6df44125..2ced38847be 100755 --- a/src/server/shared/Logging/Log.cpp +++ b/src/server/shared/Logging/Log.cpp @@ -127,7 +127,7 @@ void Log::CreateAppenderFromConfig(const char* name) } uint8 id = NextAppenderId(); - appenders[id] = new AppenderFile(id, name, level, filename.c_str(), mode.c_str(), backup); + appenders[id] = new AppenderFile(id, name, level, filename.c_str(), m_logsDir.c_str(), mode.c_str(), backup); //fprintf(stdout, "Log::CreateAppenderFromConfig: Created Appender %s (%u), Type FILE, Mask %u, File %s, Mode %s\n", name, id, level, filename.c_str(), mode.c_str()); // DEBUG - RemoveMe break; } |