next add callback

This commit is contained in:
cppla 2022-07-13 17:11:22 +08:00
parent 7316dbdddb
commit f70705d872
3 changed files with 7 additions and 1 deletions

@ -42,21 +42,25 @@
{
"name": "cpu high warning",
"rule": "cpu>90",
"interval": 600,
"callback": "https://yourSMSurl"
},
{
"name": "memory high warning",
"rule": "(memory_used/memory_total)*100>90",
"interval": 600,
"callback": "https://yourSMSurl"
},
{
"name": "ipv4 offline warning",
"rule": "online4=0",
"interval": 1800,
"callback": "https://yourSMSurl"
},
{
"name": "you can parse an expression combining any known field",
"rule": "(hdd_used/hdd_total)*100>95",
"interval": 1800,
"callback": "https://yourSMSurl"
}
]

@ -311,7 +311,7 @@ void CMain::WatchdogMessage(int ClientNetID, double load_1, double load_5, doubl
{
int ClientID = ClientNetToClient(ClientNetID);
time_t currentStamp = (long long)time(/*ago*/0);
if ((currentStamp-Client(ClientID)->m_AlarmLastTime) > 1800)
if ((currentStamp-Client(ClientID)->m_AlarmLastTime) > Watchdog(ID)->m_aInterval)
{
Client(ClientID)->m_AlarmLastTime = currentStamp;
printf("node info: %s\n", Client(ClientID)->m_aUsername);
@ -517,6 +517,7 @@ int CMain::ReadConfig()
str_copy(Watchdog(ID)->m_aName, jStart[i]["name"].u.string.ptr, sizeof(Watchdog(ID)->m_aName));
str_copy(Watchdog(ID)->m_aRule, jStart[i]["rule"].u.string.ptr, sizeof(Watchdog(ID)->m_aRule));
Watchdog(ID)->m_aInterval = jStart[i]["interval"].u.integer;
str_copy(Watchdog(ID)->m_aCallback, jStart[i]["callback"].u.string.ptr, sizeof(Watchdog(ID)->m_aCallback));
ID++;

@ -86,6 +86,7 @@ class CMain
struct CWatchDog{
char m_aName[128];
char m_aRule[128];
int m_aInterval;
char m_aCallback[128];
} m_aCWatchDogs[NET_MAX_CLIENTS];