Commit b9e2a758 authored by Node- 门 忠鑫's avatar Node- 门 忠鑫

# 修复无法更新lastTime bug

parent 76110074
*.idea *.idea
*.log *.log
enoch enoch
\ No newline at end of file go.sum
\ No newline at end of file
...@@ -26,7 +26,6 @@ func Sender(target []string, title string, info string, notice Notice) { ...@@ -26,7 +26,6 @@ func Sender(target []string, title string, info string, notice Notice) {
senderMail(title, info, notice.Receiver) senderMail(title, info, notice.Receiver)
default: default:
logger.Error.Println("策略配置错误,未匹配到对应的Sender") logger.Error.Println("策略配置错误,未匹配到对应的Sender")
} }
} }
...@@ -69,11 +68,9 @@ func buildDingDingMsg(title string, info string) []byte { ...@@ -69,11 +68,9 @@ func buildDingDingMsg(title string, info string) []byte {
} }
msgStr, err := json.Marshal(msg) msgStr, err := json.Marshal(msg)
if nil != err { if nil != err {
logger.Error.Println("无法序列化ding ding msg", err) logger.Error.Println("无法序列化ding ding msg", err)
} }
logger.Info.Println("buildDingDingMsg", msgStr)
return msgStr return msgStr
} }
...@@ -87,10 +84,10 @@ func isExpired(key string, interval int64) bool { ...@@ -87,10 +84,10 @@ func isExpired(key string, interval int64) bool {
logger.Info.Println("---------时间间隔:old:", lastTime, ",new:", now) logger.Info.Println("---------时间间隔:old:", lastTime, ",new:", now)
if hasValue { // 存在旧值,判断是否过期 if hasValue { // 存在旧值,判断是否过期
if now-lastTime.(int64) >= interval { //过期 if now-lastTime.(int64) >= interval { //过期
SenderWatcher.Store(key, now)
return true return true
} }
//不过期,重新赋周期内最小值 return false
SenderWatcher.Store(key, lastTime)
} }
return true return true
} }
......
...@@ -46,7 +46,6 @@ func DealResult(res []client.Result, strategies []Strategy) { ...@@ -46,7 +46,6 @@ func DealResult(res []client.Result, strategies []Strategy) {
params[alterValueLen] = reflect.ValueOf(reflect.ValueOf(value).String()) params[alterValueLen] = reflect.ValueOf(reflect.ValueOf(value).String())
logger.Info.Println(uniqueTag, ":", params) logger.Info.Println(uniqueTag, ":", params)
rs := operatorMethod.Call(params) rs := operatorMethod.Call(params)
logger.Info.Println(uniqueTag, ":", params, rs[0])
if rs[0].Bool() { //触发报警策略 if rs[0].Bool() { //触发报警策略
Sender(tagValues, strategy.Name, buildMsgMethod.Call(params)[0].String(), notice) // 报警 Sender(tagValues, strategy.Name, buildMsgMethod.Call(params)[0].String(), notice) // 报警
} }
...@@ -88,7 +87,6 @@ func DealResult(res []client.Result, strategies []Strategy) { ...@@ -88,7 +87,6 @@ func DealResult(res []client.Result, strategies []Strategy) {
logger.Info.Println(k, ":", v) logger.Info.Println(k, ":", v)
rs := operatorMethod.Call(v) rs := operatorMethod.Call(v)
logger.Info.Println(k, ":", v, rs[0])
//结果报警 //结果报警
if rs[0].Bool() { //触发报警策略 if rs[0].Bool() { //触发报警策略
Sender(tagValueMap[k], strategy.Name, buildMsgMethod.Call(v)[0].String(), notice) // 报警 Sender(tagValueMap[k], strategy.Name, buildMsgMethod.Call(v)[0].String(), notice) // 报警
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
"type": 2, "type": 2,
"operator": "Less", "operator": "Less",
"alter_value": [ "alter_value": [
"0.8" "0"
], ],
"tag": [ "tag": [
"sys_name" "sys_name"
...@@ -15,139 +15,18 @@ ...@@ -15,139 +15,18 @@
"msg": true "msg": true
}, },
"personal_alter_value": { "personal_alter_value": {
"feature": [ "gu-bei": [
"0.7"
],
"xyqb": [
"1"
]
},
"notice": {
"sender": 1,
"interval": 120,
"receiver": [
"https://oapi.dingtalk.com/robot/send?access_token=9ffab8e4ae5f94e0fbf84aa91c9cb474d9e3d5bd0bb3c2daffe4cdfe0c2cbbc7",
"https://oapi.dingtalk.com/robot/send?access_token=50cab90234d56e4151ef58132714482ce20f2dce791b2a492439fdfa5fc092ca"
]
}
},
{
"name": "访问量同比",
"sql": "select count(traceId) from trace_info where time > now() - 1d5m and time < now() - 1d group by sys_name fill(0);select count(traceId) from trace_info where time > now() - 5m group by sys_name fill(1);",
"sql_len": 2,
"type": 2,
"operator": "ComparedWithSame",
"alter_value": [
"0.1"
],
"tag": [
"sys_name"
],
"ignore_tag": {
"msg": true
},
"personal_alter_value": {
"feature": [
"0.7"
],
"xyqb": [
"1"
]
},
"notice": {
"sender": 2,
"interval": 120,
"receiver": [
"zhongxin.men@quantgroup.cn"
]
}
},
{
"name": "cpu负载",
"sql": "select mean(system_load_average)/mean(processors) from machine_info where time > now() - 1m group by sys_name, host fill(1);",
"sql_len": 1,
"type": 1,
"operator": "Greater",
"alter_value": [
"0.9"
],
"tag": [
"host",
"sys_name"
],
"personal_alter_value": {
"feature": [
"0.7"
],
"xyqb": [
"1" "1"
] ]
}, },
"notice": { "notice": {
"sender": 1, "sender": 120,
"interval": 360, "interval": 1,
"receiver": [ "receiver": [
"https://oapi.dingtalk.com/robot/send?access_token=9ffab8e4ae5f94e0fbf84aa91c9cb474d9e3d5bd0bb3c2daffe4cdfe0c2cbbc7", "https://oapi.dingtalk.com/robot/send?access_token=9ffab8e4ae5f94e0fbf84aa91c9cb474d9e3d5bd0bb3c2daffe4cdfe0c2cbbc7",
"https://oapi.dingtalk.com/robot/send?access_token=50cab90234d56e4151ef58132714482ce20f2dce791b2a492439fdfa5fc092ca" "https://oapi.dingtalk.com/robot/send?access_token=50cab90234d56e4151ef58132714482ce20f2dce791b2a492439fdfa5fc092ca"
]
}
},
{
"name": "内存负载",
"sql": "select mean(mem_free)/mean(mem_tol) from machine_info where time > now() - 2m group by sys_name,host fill(0);",
"sql_len": 1,
"type": 1,
"operator": "Less",
"alter_value": [
"0.2"
],
"tag": [
"host",
"sys_name"
],
"personal_alter_value": {
"feature": [
"0.7"
],
"xyqb": [
"1"
]
},
"notice": {
"sender": 2,
"interval": 120,
"receiver": [
"zhongxin.men@quantgroup.cn"
]
}
},
{
"name": "硬盘负载",
"sql": "select last(disk_free)/last(disk_tol) from machine_info where time > now() - 2m group by sys_name,host fill(0);",
"sql_len": 1,
"type": 1,
"operator": "Less",
"alter_value": [
"0.2"
],
"tag": [
"host",
"sys_name"
],
"personal_alter_value": {
"feature": [
"0.7"
], ],
"xyqb": [ "link":"http://172.20.6.33:3000/d/Qvs4cB_iz/server?from=now-1h&to=now&refresh=5m&orgId=1&var-sysName=xyqb-user2"
"1"
]
},
"notice": {
"sender": 2,
"interval": 120,
"receiver": [
"zhongxin.men@quantgroup.cn"
]
} }
} }
] ]
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment