From dd753957ef55cbb17dce17771fb17469f90088e6 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期六, 13 七月 2019 17:46:01 +0800
Subject: [PATCH] 定时器缓冲容错
---
ruleserver/ruleToformula.go | 16 +++++++++++-----
ruleserver/timeTicker.go | 2 +-
2 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index 646f65a..8d56592 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -546,10 +546,16 @@
for k, timeEle := range TimeEleList {
if strings.Contains(k, groupId) {
if timeEle.AlarmFlag {
- logger.Debug("------------------------------鏉�姝诲畾鏃跺櫒锛屾姤璀︽甯х姸鎬佹敼鍙樼殑鏁版嵁锛屾鏃剁殑璁℃暟鍣ㄧ殑鍊间负",timeEle.N)
- flagTime = "12"
- args.RuleResult["timeLabel"] = flagTime
- delete(TimeEleList,k)
+ if timeEle.BufferFlag == 0 {
+ logger.Debug("------------------------------鏉�姝诲畾鏃跺櫒锛屾姤璀︽甯х姸鎬佹敼鍙樼殑鏁版嵁锛屾鏃剁殑璁℃暟鍣ㄧ殑鍊间负",timeEle.N)
+ flagTime = "12"
+ args.RuleResult["timeLabel"] = flagTime
+ delete(TimeEleList,k)
+ } else {
+ if timeEle.BufferFlag > 0 {
+ timeEle.BufferFlag--
+ }
+ }
} else {
delete(TimeEleList,k)
}
@@ -885,7 +891,7 @@
if flag {
timeLength, _ := strconv.Atoi(rule.SdkArgValue)
- timeEle := TimeElement{N: timeLength, InitN: timeLength, AlarmFlag: false, CacheSdkData: ResultMsg{message,args.RuleResult}} // 鎵旇繘鍘讳竴涓畾鏃跺櫒鍏冪礌锛堝苟缂撳瓨褰撳墠鐢婚潰甯ф暟鎹級
+ timeEle := TimeElement{N: timeLength, InitN: timeLength, AlarmFlag: false,BufferFlag:6, CacheSdkData: ResultMsg{message,args.RuleResult}} // 鎵旇繘鍘讳竴涓畾鏃跺櫒鍏冪礌锛堝苟缂撳瓨褰撳墠鐢婚潰甯ф暟鎹級
//TimeEleList = make(map[string]timeElement)
TimeEleList[groupId+" "+rule.Id] = &timeEle // 瀹氭椂鍣ㄥ厓绱犱互鎽勫儚鏈篿d鎷兼帴鍖哄煙id涓洪敭
logger.Info("鍒涘缓浜嗚鏁板櫒骞朵笖璁℃暟鍣ㄩ泦鍚堜负锛�", TimeEleList)
diff --git a/ruleserver/timeTicker.go b/ruleserver/timeTicker.go
index c119195..6b95c31 100644
--- a/ruleserver/timeTicker.go
+++ b/ruleserver/timeTicker.go
@@ -15,7 +15,7 @@
type TimeElement struct {
N int // 鎸夋椂闂翠緷娆¢�掑噺鐨勫綋鍓嶅��
InitN int // 璧嬪�煎悗灏变笉鍙樼殑鍒濆鍊�
- BufferFlag int // 缂撳啿瀹归敊浣� 杩炵画甯alse鎵嶄负false
+ BufferFlag int // 缂撳啿瀹归敊浣� 杩炵画n甯alse鎵嶄负false
AlarmFlag bool // 鎶ヨ鏍囧織浣� 瀹氭椂鍣ㄥ紑鍚悗绗竴娆℃姤璀︽椂浼氳缃负true 寰�鍚庡啀鏉ユ姤璀︿篃涓嶄細鎻掕繘ES
CacheSdkData ResultMsg // 瀹氭椂鍣ㄧ殑缂撳瓨鏁版嵁 鎸佺画鏃堕棿绫荤殑寮�鍚畾鏃跺櫒鏃惰缂撳瓨涓�甯�
GroupId string // 鑱斿姩瑙勫垯闇�瑕佽褰曚笅姝ゆ椂鐨勮鍒欑粍id
--
Gitblit v1.8.0