diff options
author | Faq <ainarsh@gmail.com> | 2012-08-21 10:58:15 +0300 |
---|---|---|
committer | Faq <ainarsh@gmail.com> | 2012-08-21 10:58:15 +0300 |
commit | 291b0899c503bc7bf7d8463a984fd8b638867eda (patch) | |
tree | 7a76f1ec88a89adf5d79bf8e1ba670baa8d56745 /src/server/shared/Logging/Appender.h | |
parent | c400923a1a96e458ca8b33b6979abc6b344cb41f (diff) | |
parent | 542521a026031764ddd98518e7f5bdab91bc0ebb (diff) |
Merge remote-tracking branch 'upstream/master' into SpellMasks_0
Diffstat (limited to 'src/server/shared/Logging/Appender.h')
-rw-r--r-- | src/server/shared/Logging/Appender.h | 36 |
1 files changed, 30 insertions, 6 deletions
diff --git a/src/server/shared/Logging/Appender.h b/src/server/shared/Logging/Appender.h index 3105f0e6bb4..c0e03b13db1 100644 --- a/src/server/shared/Logging/Appender.h +++ b/src/server/shared/Logging/Appender.h @@ -58,10 +58,18 @@ enum LogFilterType LOG_FILTER_AUTHSERVER, LOG_FILTER_WORLDSERVER, LOG_FILTER_GAMEEVENTS, - LOG_FILTER_CALENDAR + LOG_FILTER_CALENDAR, + LOG_FILTER_CHARACTER, + LOG_FILTER_ARENAS, + LOG_FILTER_SQL_DRIVER, + LOG_FILTER_SQL_DEV, + LOG_FILTER_PLAYER_DUMP, + LOG_FILTER_BATTLEFIELD, + LOG_FILTER_SERVER_LOADING, + LOG_FILTER_OPCODES }; -const uint8 MaxLogFilter = uint8(LOG_FILTER_CALENDAR) + 1; +const uint8 MaxLogFilter = uint8(LOG_FILTER_OPCODES) + 1; // Values assigned have their equivalent in enum ACE_Log_Priority enum LogLevel @@ -85,9 +93,22 @@ enum AppenderType APPENDER_DB, }; +enum AppenderFlags +{ + APPENDER_FLAGS_NONE = 0x00, + APPENDER_FLAGS_PREFIX_TIMESTAMP = 0x01, + APPENDER_FLAGS_PREFIX_LOGLEVEL = 0x02, + APPENDER_FLAGS_PREFIX_LOGFILTERTYPE = 0x04, + APPENDER_FLAGS_USE_TIMESTAMP = 0x08, // only used by FileAppender + APPENDER_FLAGS_MAKE_FILE_BACKUP = 0x10 // only used by FileAppender +}; + struct LogMessage { - LogMessage(LogLevel _level, LogFilterType _type, std::string _text): level(_level), type(_type), text(_text) + LogMessage(LogLevel _level, LogFilterType _type, std::string _text) + : level(_level) + , type(_type) + , text(_text) { mtime = time(NULL); } @@ -98,20 +119,22 @@ struct LogMessage LogLevel level; LogFilterType type; std::string text; - uint32 param1; + std::string prefix; + std::string param1; time_t mtime; }; class Appender { public: - Appender(uint8 _id, std::string const& name, AppenderType type = APPENDER_NONE, LogLevel level = LOG_LEVEL_DISABLED); + Appender(uint8 _id, std::string const& name, AppenderType type = APPENDER_NONE, LogLevel level = LOG_LEVEL_DISABLED, AppenderFlags flags = APPENDER_FLAGS_NONE); virtual ~Appender(); uint8 getId() const; std::string const& getName() const; AppenderType getType() const; LogLevel getLogLevel() const; + AppenderFlags getFlags() const; void setLogLevel(LogLevel); void write(LogMessage& message); @@ -119,12 +142,13 @@ class Appender static const char* getLogFilterTypeString(LogFilterType type); private: - virtual void _write(LogMessage& /*message*/) {}; + virtual void _write(LogMessage& /*message*/) = 0; uint8 id; std::string name; AppenderType type; LogLevel level; + AppenderFlags flags; }; typedef std::map<uint8, Appender*> AppenderMap; |