panlei
2019-07-13 ac8aa9785bc3c31afb7eb5a430efdf45cf9dccc3
ruleserver/timeTicker.go
@@ -13,12 +13,12 @@
// 定时器元素
type TimeElement struct {
   N            int      // 按时间依次递减的当前值
   InitN        int      // 赋值后就不变的初始值
   BufferFlag    int     // 缓冲容错位 连续帧false才为false
   AlarmFlag    bool     // 报警标志位 定时器开启后第一次报警时会被置为true 往后再来报警也不会插进ES
   CacheSdkData SdkDatas // 定时器的缓存数据 持续时间类的开启定时器时要缓存一帧
   GroupId      string   // 联动规则需要记录下此时的规则组id
   N            int                  // 按时间依次递减的当前值
   InitN        int                  // 赋值后就不变的初始值
   BufferFlag   int                  // 缓冲容错位 连续帧false才为false
   AlarmFlag    bool                 // 报警标志位 定时器开启后第一次报警时会被置为true 往后再来报警也不会插进ES
   CacheSdkData ResultMsg // 定时器的缓存数据 持续时间类的开启定时器时要缓存一帧
   GroupId      string               // 联动规则需要记录下此时的规则组id
   RuleResults  []*RuleResult
}
type RuleResult struct {
@@ -44,11 +44,11 @@
            for k, timeEle := range TimeEleList {
               if timeEle.N > 0 {
                  timeEle.N = timeEle.N - 1
                  logger.Info("-------------------------------------打印定时器元素当前值-----------------------------------------:", timeEle.N)
                  logger.Error("-------------------------------------打印定时器元素当前值-----------------------------------------:", timeEle.N)
               }
               if timeEle.GroupId != "" && timeEle.N == 0{
               if timeEle.GroupId != "" && timeEle.N == 0 {
                  // 说明是联动任务的时间窗口 到点儿了该销毁了,再来了再创建
                  delete(TimeEleList,k)
                  delete(TimeEleList, k)
               }
            }
         case stop := <-stopChan:
@@ -65,7 +65,6 @@
   stopChan <- true
   TimeTicker()
}
// 结构体根据某字段排序
type SubList []*RuleResult