mirror of
https://github.com/mangosfour/server.git
synced 2025-12-23 07:37:01 +00:00
[9924] Implement .server log filter and .server log level comamnds.
* .server log filter comamnd let temporary (until config reload or restart) set log filters state. Or look at filters state. * .server log level renamed from .server set loglevel but now let look at log level also.
This commit is contained in:
parent
ffd2cf874d
commit
b6d7365ac9
12 changed files with 140 additions and 48 deletions
|
|
@ -33,7 +33,7 @@ enum LogLevel
|
|||
LOG_LVL_DEBUG = 3
|
||||
};
|
||||
|
||||
// bitmask
|
||||
// bitmask (not forgot update logFilterData content)
|
||||
enum LogFilters
|
||||
{
|
||||
LOG_FILTER_TRANSPORT_MOVES = 0x0001, // any related to transport moves
|
||||
|
|
@ -48,6 +48,17 @@ enum LogFilters
|
|||
LOG_FILTER_AI_AND_MOVEGENSS = 0x0200, // DoT/HoT apply trace
|
||||
};
|
||||
|
||||
#define LOG_FILTER_COUNT 10
|
||||
|
||||
struct LogFilterData
|
||||
{
|
||||
char const* name;
|
||||
char const* configName;
|
||||
bool defaultState;
|
||||
};
|
||||
|
||||
extern LogFilterData logFilterData[LOG_FILTER_COUNT];
|
||||
|
||||
enum Color
|
||||
{
|
||||
BLACK,
|
||||
|
|
@ -129,6 +140,7 @@ class Log : public MaNGOS::Singleton<Log, MaNGOS::ClassLevelLockable<Log, ACE_Th
|
|||
// any log level
|
||||
void outCharDump( const char * str, uint32 account_id, uint32 guid, const char * name );
|
||||
void outRALog( const char * str, ... ) ATTR_PRINTF(2,3);
|
||||
uint32 GetLogLevel() const { return m_logLevel; }
|
||||
void SetLogLevel(char * Level);
|
||||
void SetLogFileLevel(char * Level);
|
||||
void SetColor(bool stdout_stream, Color color);
|
||||
|
|
@ -137,6 +149,7 @@ class Log : public MaNGOS::Singleton<Log, MaNGOS::ClassLevelLockable<Log, ACE_Th
|
|||
static void outTimestamp(FILE* file);
|
||||
static std::string GetTimestampStr();
|
||||
uint32 getLogFilter() const { return m_logFilter; }
|
||||
void SetLogFilter(LogFilters filter, bool on) { if (on) m_logFilter |= filter; else m_logFilter &= ~filter; }
|
||||
bool HasLogLevelOrHigher(LogLevel loglvl) const { return m_logLevel >= loglvl || (m_logFileLevel >= loglvl && logfile); }
|
||||
bool IsOutCharDump() const { return m_charLog_Dump; }
|
||||
bool IsIncludeTime() const { return m_includeTime; }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue