Start collect memory metrics #634

* SQLite3 memory
* number of MySQL Thread workers
* number of MySQL Monitor workers
pull/637/head
René Cannaò 10 years ago
parent 7ef7bb8df3
commit 0a00ab0f99

@ -78,8 +78,8 @@ class MySQL_Monitor {
void insert_into_tables_defs(std::vector<table_def_t *> *tables_defs, const char *table_name, const char *table_def);
void drop_tables_defs(std::vector<table_def_t *> *tables_defs);
void check_and_build_standard_tables(SQLite3DB *db, std::vector<table_def_t *> *tables_defs);
unsigned int num_threads;
public:
unsigned int num_threads;
wqueue<WorkItem*> queue;
MySQL_Monitor_Connection_Pool *My_Conn_Pool;
bool shutdown;

@ -9,6 +9,7 @@
extern Query_Processor *GloQPro;
extern MySQL_Authentication *GloMyAuth;
extern MySQL_Threads_Handler *GloMTH;
extern MySQL_Monitor *GloMyMon;
extern MySQL_Logger *GloMyLogger;
const CHARSET_INFO * proxysql_find_charset_nr(unsigned int nr) {
@ -2277,12 +2278,26 @@ SQLite3_result * MySQL_Threads_Handler::SQL3_GlobalStatus() {
pta[1]=buf;
result->add_row(pta);
}
{ // Slow queries
{ // Servers_table_version
pta[0]=(char *)"Servers_table_version";
sprintf(buf,"%u",MyHGM->get_servers_table_version());
pta[1]=buf;
result->add_row(pta);
}
{ // MySQL Threads workers
pta[0]=(char *)"MySQL_Thread_Workers";
sprintf(buf,"%d",num_threads);
pta[1]=buf;
result->add_row(pta);
}
if (GloMyMon) {
{ // MySQL Monitor workers
pta[0]=(char *)"MySQL_Monitor_Workers";
sprintf(buf,"%d",( variables.monitor_enabled ? GloMyMon->num_threads : 0));
pta[1]=buf;
result->add_row(pta);
}
}
free(pta);
return result;
}

@ -3117,6 +3117,17 @@ void ProxySQL_Admin::stats___mysql_global() {
statsdb->execute(query);
free(query);
}
int highwater;
int current;
sqlite3_status(SQLITE_STATUS_MEMORY_USED, &current, &highwater, 0);
char *vn=(char *)"SQLite3_memory";
char *query=(char *)malloc(strlen(a)+strlen(vn)+32);
char bu[16];
sprintf(bu,"%d",current);
sprintf(query,a,vn,bu);
statsdb->execute(query);
free(query);
statsdb->execute("COMMIT");
delete resultset;
}

@ -35,6 +35,7 @@ LDIRS=-L$(LDIR) -L$(JEMALLOC_LDIR) $(LIBCONFIG_LDIR) -L$(RE2_PATH)/obj -L$(MARIA
MYCPPFLAGS=-std=c++11 $(IDIRS) $(OPTZ) $(DEBUG)
LDFLAGS+=
MYLIBS=-Wl,--export-dynamic -Wl,-Bstatic -lconfig -lproxysql -ldaemon -ljemalloc -lconfig++ -lre2 -lmariadbclient -Wl,-Bdynamic -lpthread -lm -lz -lrt -lcrypto -lssl $(EXTRALINK)
#MYLIBS=-Wl,--export-dynamic -Wl,-Bstatic -lconfig -lproxysql -ldaemon -lconfig++ -lre2 -lmariadbclient -Wl,-Bdynamic -lpthread -lm -lz -lrt -lcrypto -lssl $(EXTRALINK)
UNAME_S := $(shell uname -s)
ifeq ($(UNAME_S),Linux)

Loading…
Cancel
Save