mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-30 21:57:01 +01:00
Core/Logging: Add option to remove timestamp, Log Level and Log Filter Type from logged msgs
- Appender config option .Timestamp and .Backup became obsolete - New Appender config option .Flags added Appender Console prefixes Log Level and Log Filter Type to the logged text as default Appender File prefixes Timestamp, Log Level and Log Filter Type to the logged text as default
This commit is contained in:
@@ -31,8 +31,8 @@ std::string LogMessage::getTimeStr()
|
||||
return getTimeStr(mtime);
|
||||
}
|
||||
|
||||
Appender::Appender(uint8 _id, std::string const& _name, AppenderType _type /* = APPENDER_NONE*/, LogLevel _level /* = LOG_LEVEL_DISABLED */):
|
||||
id(_id), name(_name), type(_type), level(_level)
|
||||
Appender::Appender(uint8 _id, std::string const& _name, AppenderType _type /* = APPENDER_NONE*/, LogLevel _level /* = LOG_LEVEL_DISABLED */, AppenderFlags _flags /* = APPENDER_FLAGS_NONE */):
|
||||
id(_id), name(_name), type(_type), level(_level), flags(_flags)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -60,6 +60,11 @@ LogLevel Appender::getLogLevel() const
|
||||
return level;
|
||||
}
|
||||
|
||||
AppenderFlags Appender::getFlags() const
|
||||
{
|
||||
return flags;
|
||||
}
|
||||
|
||||
void Appender::setLogLevel(LogLevel _level)
|
||||
{
|
||||
level = _level;
|
||||
@@ -67,9 +72,40 @@ void Appender::setLogLevel(LogLevel _level)
|
||||
|
||||
void Appender::write(LogMessage& message)
|
||||
{
|
||||
if (level && level <= message.level)
|
||||
_write(message);
|
||||
//else fprintf(stderr, "Appender::write: Appender %s, Level %s. Msg %s Level %s Type %s WRONG LEVEL MASK\n", getName().c_str(), getLogLevelString(level), message.text.c_str(), getLogLevelString(message.level), getLogFilterTypeString(message.type)); // DEBUG - RemoveMe
|
||||
if (!level || level > message.level)
|
||||
{
|
||||
//fprintf(stderr, "Appender::write: Appender %s, Level %s. Msg %s Level %s Type %s WRONG LEVEL MASK\n", getName().c_str(), getLogLevelString(level), message.text.c_str(), getLogLevelString(message.level), getLogFilterTypeString(message.type)); // DEBUG - RemoveMe
|
||||
return;
|
||||
}
|
||||
|
||||
message.prefix.clear();
|
||||
if (flags & APPENDER_FLAGS_PREFIX_TIMESTAMP)
|
||||
message.prefix.append(message.getTimeStr().c_str());
|
||||
|
||||
if (flags & APPENDER_FLAGS_PREFIX_LOGLEVEL)
|
||||
{
|
||||
if (!message.prefix.empty())
|
||||
message.prefix.push_back(' ');
|
||||
|
||||
char text[MAX_QUERY_LEN];
|
||||
snprintf(text, MAX_QUERY_LEN, "%-5s", Appender::getLogLevelString(message.level));
|
||||
message.prefix.append(text);
|
||||
}
|
||||
|
||||
if (flags & APPENDER_FLAGS_PREFIX_LOGFILTERTYPE)
|
||||
{
|
||||
if (!message.prefix.empty())
|
||||
message.prefix.push_back(' ');
|
||||
|
||||
char text[MAX_QUERY_LEN];
|
||||
snprintf(text, MAX_QUERY_LEN, "[%-15s]", Appender::getLogFilterTypeString(message.type));
|
||||
message.prefix.append(text);
|
||||
}
|
||||
|
||||
if (!message.prefix.empty())
|
||||
message.prefix.push_back(' ');
|
||||
|
||||
_write(message);
|
||||
}
|
||||
|
||||
const char* Appender::getLogLevelString(LogLevel level)
|
||||
@@ -163,6 +199,8 @@ char const* Appender::getLogFilterTypeString(LogFilterType type)
|
||||
return "WORLDSERVER";
|
||||
case LOG_FILTER_GAMEEVENTS:
|
||||
return "GAMEEVENTS";
|
||||
case LOG_FILTER_CALENDAR:
|
||||
return "CALENDAR";
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user