Core/Logging: Use config LogsDir to save log files (re-added)
This commit is contained in:
@@ -18,9 +18,10 @@
|
|||||||
#include "AppenderFile.h"
|
#include "AppenderFile.h"
|
||||||
#include "Common.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)
|
: Appender(id, name, APPENDER_FILE, level)
|
||||||
, filename(_filename)
|
, filename(_filename)
|
||||||
|
, logDir(_logDir)
|
||||||
, mode(_mode)
|
, mode(_mode)
|
||||||
, backup(_backup)
|
, backup(_backup)
|
||||||
{
|
{
|
||||||
@@ -67,5 +68,5 @@ FILE* AppenderFile::OpenFile(std::string const &filename, std::string const &mod
|
|||||||
newName.append(LogMessage::getTimeStr(time(NULL)));
|
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
|
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());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
class AppenderFile: public Appender
|
class AppenderFile: public Appender
|
||||||
{
|
{
|
||||||
public:
|
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();
|
~AppenderFile();
|
||||||
FILE* OpenFile(std::string const& _name, std::string const& _mode, bool _backup);
|
FILE* OpenFile(std::string const& _name, std::string const& _mode, bool _backup);
|
||||||
|
|
||||||
@@ -31,6 +31,7 @@ class AppenderFile: public Appender
|
|||||||
void _write(LogMessage& message);
|
void _write(LogMessage& message);
|
||||||
FILE* logfile;
|
FILE* logfile;
|
||||||
std::string filename;
|
std::string filename;
|
||||||
|
std::string logDir;
|
||||||
std::string mode;
|
std::string mode;
|
||||||
bool dynamicName;
|
bool dynamicName;
|
||||||
bool backup;
|
bool backup;
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ void Log::CreateAppenderFromConfig(const char* name)
|
|||||||
}
|
}
|
||||||
|
|
||||||
uint8 id = NextAppenderId();
|
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
|
//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;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user