mirror of
https://github.com//cppla/ServerStatus
synced 2025-07-04 08:25:58 +08:00
next add callback
This commit is contained in:
parent
7316dbdddb
commit
f70705d872
server
@ -42,21 +42,25 @@
|
|||||||
{
|
{
|
||||||
"name": "cpu high warning",
|
"name": "cpu high warning",
|
||||||
"rule": "cpu>90",
|
"rule": "cpu>90",
|
||||||
|
"interval": 600,
|
||||||
"callback": "https://yourSMSurl"
|
"callback": "https://yourSMSurl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "memory high warning",
|
"name": "memory high warning",
|
||||||
"rule": "(memory_used/memory_total)*100>90",
|
"rule": "(memory_used/memory_total)*100>90",
|
||||||
|
"interval": 600,
|
||||||
"callback": "https://yourSMSurl"
|
"callback": "https://yourSMSurl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ipv4 offline warning",
|
"name": "ipv4 offline warning",
|
||||||
"rule": "online4=0",
|
"rule": "online4=0",
|
||||||
|
"interval": 1800,
|
||||||
"callback": "https://yourSMSurl"
|
"callback": "https://yourSMSurl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "you can parse an expression combining any known field",
|
"name": "you can parse an expression combining any known field",
|
||||||
"rule": "(hdd_used/hdd_total)*100>95",
|
"rule": "(hdd_used/hdd_total)*100>95",
|
||||||
|
"interval": 1800,
|
||||||
"callback": "https://yourSMSurl"
|
"callback": "https://yourSMSurl"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -311,7 +311,7 @@ void CMain::WatchdogMessage(int ClientNetID, double load_1, double load_5, doubl
|
|||||||
{
|
{
|
||||||
int ClientID = ClientNetToClient(ClientNetID);
|
int ClientID = ClientNetToClient(ClientNetID);
|
||||||
time_t currentStamp = (long long)time(/*ago*/0);
|
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;
|
Client(ClientID)->m_AlarmLastTime = currentStamp;
|
||||||
printf("node info: %s\n", Client(ClientID)->m_aUsername);
|
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_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));
|
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));
|
str_copy(Watchdog(ID)->m_aCallback, jStart[i]["callback"].u.string.ptr, sizeof(Watchdog(ID)->m_aCallback));
|
||||||
|
|
||||||
ID++;
|
ID++;
|
||||||
|
@ -86,6 +86,7 @@ class CMain
|
|||||||
struct CWatchDog{
|
struct CWatchDog{
|
||||||
char m_aName[128];
|
char m_aName[128];
|
||||||
char m_aRule[128];
|
char m_aRule[128];
|
||||||
|
int m_aInterval;
|
||||||
char m_aCallback[128];
|
char m_aCallback[128];
|
||||||
} m_aCWatchDogs[NET_MAX_CLIENTS];
|
} m_aCWatchDogs[NET_MAX_CLIENTS];
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user