diff --git a/README.md b/README.md index 40f8b5c..c8c5af4 100644 --- a/README.md +++ b/README.md @@ -132,6 +132,12 @@ cd ServerStatus/server && make "interval": 3600, "callback": "https://yourSMSurl" }, + { + "name": "乌兰察布服务器流量18GB告警", + "rule": "(network_out-last_network_out)/1024/1024/1024>18&(username='wlcb1'|username='wlcb2'|username='wlcb3'|username='wlcb4')", + "interval": 3600, + "callback": "https://yourSMSurl" + }, { "name": "你可以组合任何已知字段的表达式", "rule": "(hdd_used/hdd_total)*100>95", diff --git a/server/src/main.cpp b/server/src/main.cpp index cc239e4..936b13f 100644 --- a/server/src/main.cpp +++ b/server/src/main.cpp @@ -216,7 +216,8 @@ int CMain::HandleMessage(int ClientNetID, char *pMessage) pClient->m_Stats.m_time_10010, pClient->m_Stats.m_time_189, pClient->m_Stats.m_time_10086, pClient->m_Stats.m_tcpCount, pClient->m_Stats.m_udpCount, pClient->m_Stats.m_processCount, pClient->m_Stats.m_threadCount, pClient->m_Stats.m_NetworkRx, pClient->m_Stats.m_NetworkTx, - pClient->m_Stats.m_NetworkIN, pClient->m_Stats.m_NetworkOUT,pClient->m_Stats.m_MemTotal, + pClient->m_Stats.m_NetworkIN, pClient->m_Stats.m_NetworkOUT, + pClient->m_LastNetworkIN, pClient->m_LastNetworkOUT, pClient->m_Stats.m_MemTotal, pClient->m_Stats.m_MemUsed, pClient->m_Stats.m_SwapTotal, pClient->m_Stats.m_SwapUsed, pClient->m_Stats.m_HDDTotal, pClient->m_Stats.m_HDDUsed, pClient->m_Stats.m_IORead, pClient->m_Stats.m_IOWrite, pClient->m_Stats.m_CPU, pClient->m_Stats.m_Online4, @@ -268,7 +269,7 @@ int CMain::HandleMessage(int ClientNetID, char *pMessage) void CMain::WatchdogMessage(int ClientNetID, double load_1, double load_5, double load_15, double ping_10010, double ping_189, double ping_10086, double time_10010, double time_189, double time_10086, double tcp_count, double udp_count, double process_count, double thread_count, - double network_rx, double network_tx, double network_in, double network_out, double memory_total, double memory_used, + double network_rx, double network_tx, double network_in, double network_out, double last_network_in, double last_network_out, double memory_total, double memory_used, double swap_total, double swap_used, double hdd_total, double hdd_used, double io_read, double io_write, double cpu, double online4, double online6) { @@ -326,6 +327,8 @@ void CMain::WatchdogMessage(int ClientNetID, double load_1, double load_5, doubl symbol_table.add_variable("network_tx",network_tx); symbol_table.add_variable("network_in",network_in); symbol_table.add_variable("network_out",network_out); + symbol_table.add_variable("last_network_in",last_network_in); + symbol_table.add_variable("last_network_out",last_network_out); symbol_table.add_variable("memory_total",memory_total); symbol_table.add_variable("memory_used",memory_used); symbol_table.add_variable("swap_total",swap_total); diff --git a/server/src/main.h b/server/src/main.h index 3649661..cc6e518 100644 --- a/server/src/main.h +++ b/server/src/main.h @@ -122,8 +122,8 @@ public: void WatchdogMessage(int ClientNetID, double load_1, double load_5, double load_15, double ping_10010, double ping_189, double ping_10086, double time_10010, double time_189, double time_10086, double tcp_count, double udp_count, double process_count, double thread_count, - double network_rx, double network_tx, double network_in, double network_out,double memory_total, - double memory_used,double swap_total, double swap_used, double hdd_total, + double network_rx, double network_tx, double network_in, double network_out, double last_network_in, double last_network_out, + double memory_total, double memory_used,double swap_total, double swap_used, double hdd_total, double hdd_used, double io_read, double io_write, double cpu,double online4, double online6); CClient *Client(int ClientID) { return &m_aClients[ClientID]; }