| | |
| | | logger.Error("事件推送模块儿的异常捕获:",err) |
| | | } |
| | | }() |
| | | |
| | | start := time.Now() |
| | | // 装配成自己可以识别的数据 |
| | | label := new(Label) |
| | | label.DataFormatToLabel(msg) |
| | |
| | | if result.(bool) { |
| | | logger.Info("通过规则,表达式为:", result) |
| | | // 推送服务器 |
| | | pushData(ruleGroup.Urls, msg) |
| | | pushData(ruleGroup.Urls, msg, start) |
| | | //os.Exit(1) |
| | | } else { |
| | | logger.Info("没通过规则,表达式为:", result) |
| | |
| | | } |
| | | |
| | | // 调用目标服务器的插入接口 |
| | | func pushData(urls []*protomsg.PushUrl, data structure.ResultMsg) { |
| | | func pushData(urls []*protomsg.PushUrl, data structure.ResultMsg,start time.Time) { |
| | | for _, url := range urls { |
| | | logger.Debug("看看推送地址:",url.Url) |
| | | bytes,err1 := proto.Marshal(data) |
| | | if err1 != nil { |
| | | logger.Info("序列化失败:",err1) |
| | | } |
| | | urlPool[url.Url] <- bytes |
| | | if _, ok := urlPool[url.Url] ; ok { |
| | | urlPool[url.Url] <- bytes |
| | | logger.Info("chan信息而: ", urlPool[url.Url],time.Since(start)) |
| | | } |
| | | logger.Info("chan信息以: ", urlPool[url.Url]) |
| | | |
| | | } |
| | | } |
| | | |