aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/server/game/World/World.cpp2
-rwxr-xr-xsrc/server/shared/Logging/Log.cpp9
-rwxr-xr-xsrc/server/shared/Logging/Log.h2
3 files changed, 13 insertions, 0 deletions
diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp
index d16e49b6b36..3da34bc2a47 100755
--- a/src/server/game/World/World.cpp
+++ b/src/server/game/World/World.cpp
@@ -398,6 +398,8 @@ void World::LoadConfigSettings(bool reload)
sLog->outError("World settings reload fail: can't read settings from %s.", sConfig->GetFilename().c_str());
return;
}
+
+ sLog->ReloadConfig(); // Reload log levels and filters
}
///- Read the player limit and the Message of the day from the config file
diff --git a/src/server/shared/Logging/Log.cpp b/src/server/shared/Logging/Log.cpp
index b1318bf4aef..a42e89e0b3e 100755
--- a/src/server/shared/Logging/Log.cpp
+++ b/src/server/shared/Logging/Log.cpp
@@ -187,6 +187,15 @@ void Log::Initialize()
}
}
+void Log::ReloadConfig()
+{
+ m_logLevel = sConfig->GetIntDefault("LogLevel", LOGL_NORMAL);
+ m_logFileLevel = sConfig->GetIntDefault("LogFileLevel", LOGL_NORMAL);
+ m_dbLogLevel = sConfig->GetIntDefault("DBLogLevel", LOGL_NORMAL);
+
+ m_DebugLogMask = DebugLogFilters(sConfig->GetIntDefault("DebugLogMask", LOG_FILTER_NONE));
+}
+
FILE* Log::openLogFile(char const* configFileName, char const* configTimeStampFlag, char const* mode)
{
std::string logfn=sConfig->GetStringDefault(configFileName, "");
diff --git a/src/server/shared/Logging/Log.h b/src/server/shared/Logging/Log.h
index 9b5aedb8e2f..aba1708232f 100755
--- a/src/server/shared/Logging/Log.h
+++ b/src/server/shared/Logging/Log.h
@@ -108,6 +108,8 @@ class Log
public:
void Initialize();
+ void ReloadConfig();
+
void InitColors(const std::string& init_str);
void SetColor(bool stdout_stream, ColorTypes color);
void ResetColor(bool stdout_stream);