Core/Logging: Reload Logging options when .reload config is used
This commit is contained in:
@@ -398,6 +398,7 @@ void World::LoadConfigSettings(bool reload)
|
||||
sLog->outError(LOG_FILTER_GENERAL, "World settings reload fail: can't read settings from %s.", ConfigMgr::GetFilename().c_str());
|
||||
return;
|
||||
}
|
||||
sLog->LoadFromConfig();
|
||||
}
|
||||
|
||||
///- Read the player limit and the Message of the day from the config file
|
||||
|
||||
@@ -32,18 +32,8 @@
|
||||
Log::Log()
|
||||
{
|
||||
SetRealmID(0);
|
||||
AppenderId = 0;
|
||||
/// Common log files data
|
||||
m_logsDir = ConfigMgr::GetStringDefault("LogsDir", "");
|
||||
if (!m_logsDir.empty())
|
||||
if ((m_logsDir.at(m_logsDir.length() - 1) != '/') && (m_logsDir.at(m_logsDir.length() - 1) != '\\'))
|
||||
m_logsDir.push_back('/');
|
||||
|
||||
m_logsTimestamp = "_" + GetTimestampStr();
|
||||
|
||||
ReadAppendersFromConfig();
|
||||
ReadLoggersFromConfig();
|
||||
worker = new LogWorker();
|
||||
LoadFromConfig();
|
||||
}
|
||||
|
||||
Log::~Log()
|
||||
@@ -426,6 +416,20 @@ void Log::Close()
|
||||
it->second = NULL;
|
||||
}
|
||||
appenders.clear();
|
||||
loggers.clear();
|
||||
delete worker;
|
||||
worker = NULL;
|
||||
}
|
||||
|
||||
void Log::LoadFromConfig()
|
||||
{
|
||||
Close();
|
||||
AppenderId = 0;
|
||||
m_logsDir = ConfigMgr::GetStringDefault("LogsDir", "");
|
||||
if (!m_logsDir.empty())
|
||||
if ((m_logsDir.at(m_logsDir.length() - 1) != '/') && (m_logsDir.at(m_logsDir.length() - 1) != '\\'))
|
||||
m_logsDir.push_back('/');
|
||||
ReadAppendersFromConfig();
|
||||
ReadLoggersFromConfig();
|
||||
worker = new LogWorker();
|
||||
}
|
||||
|
||||
@@ -40,6 +40,7 @@ class Log
|
||||
~Log();
|
||||
|
||||
public:
|
||||
void LoadFromConfig();
|
||||
void Close();
|
||||
bool ShouldLog(LogFilterType type, LogLevel level) const;
|
||||
bool SetLogLevel(std::string const& name, char const* level, bool isLogger = true);
|
||||
|
||||
Reference in New Issue
Block a user