From dfcc46bc906e3e5040c74c2d0281f5b0c5d9987b Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期一, 05 八月 2019 13:27:02 +0800
Subject: [PATCH] 标签过滤器
---
labelFilter/req.go | 16 +++++++++-------
main.go | 7 ++++---
labelFilter/readyDataForLabel.go | 1 -
labelFilter/ruleForLabel.go | 12 ++++++++++--
4 files changed, 23 insertions(+), 13 deletions(-)
diff --git a/labelFilter/readyDataForLabel.go b/labelFilter/readyDataForLabel.go
index b24aa1f..2ba5e07 100644
--- a/labelFilter/readyDataForLabel.go
+++ b/labelFilter/readyDataForLabel.go
@@ -32,7 +32,6 @@
for _,yoloGroup := range result.RuleResult["yolo"].([]ruleserver.Result) {
label.DefenceLevel = append(label.DefenceLevel,yoloGroup.AlarmLevel)
}
- Judge(label,result)
}
// 浠庣紦瀛樹腑鏌ュ嚭鎵�鏈夌殑瑙勫垯鏁版嵁
diff --git a/labelFilter/req.go b/labelFilter/req.go
index e69d233..fe5fb04 100644
--- a/labelFilter/req.go
+++ b/labelFilter/req.go
@@ -15,7 +15,6 @@
)
func Die(format string, v ...interface{}) {
- fmt.Fprintln(os.Stderr, fmt.Sprintf(format, v...))
logger.Info("+++++++",format)
os.Exit(1)
}
@@ -23,11 +22,12 @@
func date() string {
return time.Now().Format(time.ANSIC)
}
-
-func Node0(url string) {
+var msgChan chan []byte
+func Receive(url string) {
var sock mangos.Socket
var err error
var msg []byte
+ msgChan = make(chan []byte,200)
if sock, err = rep.NewSocket(); err != nil {
Die("can't get new rep socket: %s", err)
}
@@ -39,11 +39,13 @@
for {
// Could also use sock.RecvMsg to get header
msg, err = sock.Recv()
- if string(msg) == "DATE" { // no need to terminate
- fmt.Println("NODE0: RECEIVED DATE REQUEST")
+ if msg != nil { // no need to terminate
+ fmt.Println("Received Data request")
+ // 鎶婃敹鍒扮殑msg濉炶繘閫氶亾
+ msgChan <- msg
+ // 缁欏彂閫佺▼搴忓弽棣堜俊鎭�
d := date()
- fmt.Printf("NODE0: SENDING DATE %s\n", d)
- err = sock.Send([]byte(d))
+ err = sock.Send([]byte("Received Data, --"+d))
if err != nil {
Die("can't send reply: %s", err.Error())
}
diff --git a/labelFilter/ruleForLabel.go b/labelFilter/ruleForLabel.go
index ccc3cf5..e3bef8e 100644
--- a/labelFilter/ruleForLabel.go
+++ b/labelFilter/ruleForLabel.go
@@ -4,13 +4,17 @@
"basic.com/dbapi.git"
"basic.com/pubsub/protomsg.git"
"github.com/knetic/govaluate"
+ "os"
"ruleprocess/logger"
"ruleprocess/ruleserver"
"strconv"
"time"
)
-func Judge(label *Label, result ruleserver.ResultMsg){
+func Judge(result ruleserver.ResultMsg){
+ // 瑁呴厤鎴愯嚜宸卞彲浠ヨ瘑鍒殑鏁版嵁
+ label := new(Label)
+ label.DataFormatToLabel(result)
//鎷垮埌鎵�鏈夎鍒欑粍
var api dbapi.EventPushApi
b,allRules := api.FindAllDetails()
@@ -63,8 +67,10 @@
logger.Info("閫氳繃瑙勫垯锛岃〃杈惧紡涓猴細",result)
// 鎺ㄩ�佹湇鍔″櫒
pushData(ruleGroup.Urls,result.(ruleserver.ResultMsg))
+ os.Exit(1)
} else {
logger.Info("娌¢�氳繃瑙勫垯,琛ㄨ揪寮忎负锛�",result)
+ os.Exit(1)
}
}
}
@@ -191,5 +197,7 @@
}
// 璋冪敤鐩爣鏈嶅姟鍣ㄧ殑鎻掑叆鎺ュ彛
func pushData (urls []*protomsg.PushUrl, data ruleserver.ResultMsg){
-
+ for _,url := range urls {
+ Push(url.Url,data)
+ }
}
\ No newline at end of file
diff --git a/main.go b/main.go
index 736c650..1277c84 100644
--- a/main.go
+++ b/main.go
@@ -74,10 +74,11 @@
logger.Info("瑙f瀽鍑烘潵鐨勬暟鎹細", arg)
ruleserver.Judge(&arg,&m) // 鎶妔dkMessage浼犺繘鍘伙紝鏂逛究缂撳瓨鏁版嵁鏃舵嫾鍑轰竴涓猺esultMag
// 鎶奱rg閲岀殑鎵撶殑鏍囩鎷垮嚭鏉ョ粰m鍐嶅皝瑁呬竴灞�
- resultMag := ruleserver.ResultMsg{SdkMessage: &m, RuleResult: arg.RuleResult}
- //logger.Info("鎵撳畬鏍囩鍚庣殑缁撴灉锛�",resultMag)
+ resultMsg := ruleserver.ResultMsg{SdkMessage: &m, RuleResult: arg.RuleResult}
// 灏嗘墦瀹屾爣绛剧殑鏁版嵁鎻掑叆鍒癊S
- insertdata.InsertToEs(resultMag)
+ insertdata.InsertToEs(resultMsg)
+ //浜嬩欢鎺ㄩ��
+
}
}
}
--
Gitblit v1.8.0