From 125cfa2c3b23d0846d7bdcb547b05ead375e6640 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Canna=C3=B2?= Date: Tue, 10 Nov 2015 02:29:37 +0000 Subject: [PATCH] First commit with MySQL_Logger --- include/MySQL_Logger.hpp | 18 ++++++++++++++++++ include/cpp.h | 1 + lib/Makefile | 2 +- lib/MySQL_Logger.cpp | 20 ++++++++++++++++++++ src/main.cpp | 8 ++++++++ 5 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 include/MySQL_Logger.hpp create mode 100644 lib/MySQL_Logger.cpp diff --git a/include/MySQL_Logger.hpp b/include/MySQL_Logger.hpp new file mode 100644 index 000000000..04269884f --- /dev/null +++ b/include/MySQL_Logger.hpp @@ -0,0 +1,18 @@ +#ifndef __CLASS_MYSQL_LOGGER_H +#define __CLASS_MYSQL_LOGGER_H +#include "proxysql.h" +#include "cpp.h" + +class MySQL_Logger { + private: + rwlock_t rwlock; + void wrlock(); + void wrunlock(); + public: + MySQL_Logger(); + ~MySQL_Logger(); + void flush_log(); +}; + + +#endif /* __CLASS_MYSQL_LOGGER_H */ diff --git a/include/cpp.h b/include/cpp.h index 56dcd1c9c..90cc74305 100644 --- a/include/cpp.h +++ b/include/cpp.h @@ -17,4 +17,5 @@ #include "query_processor.h" #include "proxysql_admin.h" #include "MySQL_HostGroups_Manager.h" +#include "MySQL_Logger.hpp" //#endif /* __cplusplus */ diff --git a/lib/Makefile b/lib/Makefile index f3eae7588..2880eafdb 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -46,7 +46,7 @@ default: libproxysql.a _OBJ = sqlite3.o c_tokenizer.o OBJ = $(patsubst %,$(ODIR)/%,$(_OBJ)) -_OBJ_CPP = ProxySQL_GloVars.oo network.oo debug.oo configfile.oo Query_Cache.oo SpookyV2.oo MySQL_Authentication.oo gen_utils.oo simple_kv.oo sqlite3db.oo global_variables.oo proxysql_mem.oo mysql_connection.oo MySQL_HostGroups_Manager.oo mysql_data_stream.oo MySQL_Thread.oo MySQL_Session.oo MySQL_Protocol.oo mysql_backend.oo Query_Processor.oo ProxySQL_Admin.oo MySQL_Monitor.oo +_OBJ_CPP = ProxySQL_GloVars.oo network.oo debug.oo configfile.oo Query_Cache.oo SpookyV2.oo MySQL_Authentication.oo gen_utils.oo simple_kv.oo sqlite3db.oo global_variables.oo proxysql_mem.oo mysql_connection.oo MySQL_HostGroups_Manager.oo mysql_data_stream.oo MySQL_Thread.oo MySQL_Session.oo MySQL_Protocol.oo mysql_backend.oo Query_Processor.oo ProxySQL_Admin.oo MySQL_Monitor.oo MySQL_Logger.oo OBJ_CPP = $(patsubst %,$(ODIR)/%,$(_OBJ_CPP)) %.ko: %.cpp diff --git a/lib/MySQL_Logger.cpp b/lib/MySQL_Logger.cpp new file mode 100644 index 000000000..bf884cd9f --- /dev/null +++ b/lib/MySQL_Logger.cpp @@ -0,0 +1,20 @@ +#include "proxysql.h" +#include "cpp.h" + +MySQL_Logger::MySQL_Logger() { + spinlock_rwlock_init(&rwlock); +}; + +MySQL_Logger::~MySQL_Logger() { +}; + +void MySQL_Logger::wrlock() { + spin_wrlock(&rwlock); +}; + +void MySQL_Logger::wrunlock() { + spin_wrunlock(&rwlock); +}; + +void MySQL_Logger::flush_log() { +}; diff --git a/src/main.cpp b/src/main.cpp index 350fcff3c..5f3b39e55 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -118,6 +118,8 @@ MySQL_Threads_Handler *GloMTH; MySQL_Monitor *GloMyMon; std::thread *MyMon_thread; +MySQL_Logger *GloMyLogger; + void * mysql_worker_thread_func(void *arg) { @@ -206,8 +208,10 @@ void ProxySQL_Main_init_main_modules() { GloMTH=NULL; GloMyAuth=NULL; GloMyMon=NULL; + GloMyLogger=NULL; MyHGM=new MySQL_HostGroups_Manager(); GloMTH=new MySQL_Threads_Handler(); + GloMyLogger = new MySQL_Logger(); } @@ -297,6 +301,10 @@ void ProxySQL_Main_shutdown_all_modules() { delete GloMTH; GloMTH=NULL; } + if (GloMyLogger) { + delete GloMyLogger; + GloMyLogger=NULL; + } delete GloAdmin; delete MyHGM;