aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Logging/AppenderDB.cpp
diff options
context:
space:
mode:
authorSpp <spp@jorge.gr>2013-11-07 16:34:44 +0100
committerSpp <spp@jorge.gr>2013-11-07 16:34:44 +0100
commit8aa9745c4c7e80ffcbbd3f2377125ad08b30b661 (patch)
tree824a43c64f1778ed1bcad62a24137262473464f5 /src/server/shared/Logging/AppenderDB.cpp
parentd26bb8517c6030139b0383659fede9628abac22c (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.cpp26
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)