diff options
author | Spp <spp@jorge.gr> | 2013-11-07 16:34:44 +0100 |
---|---|---|
committer | Spp <spp@jorge.gr> | 2013-11-07 16:34:44 +0100 |
commit | 8aa9745c4c7e80ffcbbd3f2377125ad08b30b661 (patch) | |
tree | 824a43c64f1778ed1bcad62a24137262473464f5 /src/server/shared/Logging/AppenderDB.cpp | |
parent | d26bb8517c6030139b0383659fede9628abac22c (diff) |
Core/Logging: Extend logging system to allow inheritance of loggers
- Changed default loggers and appenders
- '.' determines the relation between loggers ("type.subtype" inherits "type" logger setting if logger "type.subtype" is not defined)
- When core logs a message it search for the correct logger (root is the default one)
ie: a message logged with "type.subtype"
* Core will try to find a logger with name "type.subtype", if its not found then will search for "type", again if its not found it will return the default one "root"
Diffstat (limited to 'src/server/shared/Logging/AppenderDB.cpp')
-rw-r--r-- | src/server/shared/Logging/AppenderDB.cpp | 26 |
1 files changed, 9 insertions, 17 deletions
diff --git a/src/server/shared/Logging/AppenderDB.cpp b/src/server/shared/Logging/AppenderDB.cpp index 8b237277d79..c461186089c 100644 --- a/src/server/shared/Logging/AppenderDB.cpp +++ b/src/server/shared/Logging/AppenderDB.cpp @@ -25,25 +25,17 @@ AppenderDB::~AppenderDB() { } void AppenderDB::_write(LogMessage const& message) { - if (!enabled) + // Avoid infinite loop, PExecute triggers Logging with LOG_FILTER_SQL type + if (!enabled || !message.type.find("sql")) return; - switch (message.type) - { - case LOG_FILTER_SQL: - case LOG_FILTER_SQL_DRIVER: - case LOG_FILTER_SQL_DEV: - break; // Avoid infinite loop, PExecute triggers Logging with LOG_FILTER_SQL type - default: - PreparedStatement* stmt = LoginDatabase.GetPreparedStatement(LOGIN_INS_LOG); - stmt->setUInt64(0, message.mtime); - stmt->setUInt32(1, realmId); - stmt->setUInt8(2, uint8(message.type)); - stmt->setUInt8(3, uint8(message.level)); - stmt->setString(4, message.text); - LoginDatabase.Execute(stmt); - break; - } + PreparedStatement* stmt = LoginDatabase.GetPreparedStatement(LOGIN_INS_LOG); + stmt->setUInt64(0, message.mtime); + stmt->setUInt32(1, realmId); + stmt->setString(2, message.type); + stmt->setUInt8(3, uint8(message.level)); + stmt->setString(4, message.text); + LoginDatabase.Execute(stmt); } void AppenderDB::setRealmId(uint32 _realmId) |