panlei
2019-11-04 dc4e05cc0bfc463bcd6aac8fcd650c6c84c5e897
labelFilter/ruleForLabel.go
@@ -4,13 +4,20 @@
   "basic.com/dbapi.git"
   "basic.com/pubsub/protomsg.git"
   "basic.com/valib/logger.git"
   "github.com/golang/protobuf/proto"
   "github.com/knetic/govaluate"
   "ruleprocess/structure"
   "strconv"
   "time"
)
func Judge(msg structure.ResultMsg) {
func PushSomthing(msg structure.ResultMsg) {
   defer func() {
      if err := recover(); err != nil {
         logger.Error("事件推送模块儿的异常捕获:",err)
      }
   }()
   // 装配成自己可以识别的数据
   label := new(Label)
   label.DataFormatToLabel(msg)
@@ -33,7 +40,7 @@
         timeFlag := timeJudge(label, ruleGroup)
         if !timeFlag {
            logger.Info("不在规则的时间范围内,不推送!")
            return
            continue
         }
         result := ""
         var Connector string
@@ -314,7 +321,16 @@
func pushData(urls []*protomsg.PushUrl, data structure.ResultMsg) {
   for _, url := range urls {
      logger.Debug("看看推送地址:",url.Url)
      Push("tcp://192.168.1.123:40012", data)
      bytes,err1 := proto.Marshal(data)
      if err1 != nil {
         logger.Info("序列化失败:",err1)
      }
      if _, ok := urlPool[url.Url] ; ok {
         urlPool[url.Url] <- bytes
         logger.Info("chan信息而: ", urlPool[url.Url])
      }
      logger.Info("chan信息以: ", urlPool[url.Url])
   }
}