Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
AppenderDB.cpp
Go to the documentation of this file.
1/*
2* This file is part of Project SkyFire https://www.projectskyfire.org.
3* See LICENSE.md file for Copyright information
4*/
5
6#include "AppenderDB.h"
8
11
13
14void AppenderDB::_write(LogMessage const& message)
15{
16 if (!enabled)
17 return;
18
19 // Avoid infinite loop, PExecute triggers Logging with "sql.sql" type
20 size_t pos = message.type.find("sql");
21 if (pos == std::string::npos)
22 return;
23
24 PreparedStatement* stmt = LoginDatabase.GetPreparedStatement(LOGIN_INS_LOG);
25 stmt->setUInt64(0, message.mtime);
26 stmt->setUInt32(1, realmId);
27 stmt->setString(2, message.type);
28 stmt->setUInt8(3, uint8(message.level));
29 stmt->setString(4, message.text);
30 LoginDatabase.Execute(stmt);
31}
32
34{
35 enabled = true;
36 realmId = _realmId;
37}
AppenderType
Definition Appender.h:29
LogLevel
Definition Appender.h:16
std::uint8_t uint8
Definition Define.h:79
std::uint32_t uint32
Definition Define.h:77
@ LOGIN_INS_LOG
void _write(LogMessage const &message)
bool enabled
Definition AppenderDB.h:22
uint32 realmId
Definition AppenderDB.h:21
AppenderDB(uint8 _id, std::string const &_name, LogLevel level)
Definition AppenderDB.cpp:9
void setRealmId(uint32 realmId)
std::string name
Definition Appender.h:89
uint8 id
Definition Appender.h:88
LogLevel level
Definition Appender.h:91
Appender(uint8 _id, std::string const &name, AppenderType type=AppenderType::APPENDER_NONE, LogLevel level=LogLevel::LOG_LEVEL_DISABLED, AppenderFlags flags=APPENDER_FLAGS_NONE)
Definition Appender.cpp:24
void setString(const uint8 index, const std::string &value)
void setUInt64(const uint8 index, const uint64 value)
void setUInt32(const uint8 index, const uint32 value)
void setUInt8(const uint8 index, const uint8 value)
LoginDatabaseWorkerPool LoginDatabase
Definition Main.cpp:54
std::string type
Definition Appender.h:56
time_t mtime
Definition Appender.h:60
LogLevel level
Definition Appender.h:55
std::string text
Definition Appender.h:57