|
@@ -146,6 +146,8 @@ func (c *Customer) GetData() {
|
|
|
ch := make(chan bool, 10)
|
|
|
wg := &sync.WaitGroup{}
|
|
|
escount := Es.Count(Index, Itype, sr.EsQuery)
|
|
|
+ qu.Debug("---------", sr.EsQuery)
|
|
|
+ return
|
|
|
log.Println("查询总数:", escount, "规则ID:", sr.ID)
|
|
|
if escount == 0 {
|
|
|
continue
|
|
@@ -467,15 +469,19 @@ func (sr *SearchRule) GetEs(department, esquery string, tmpRange bson.M) {
|
|
|
qb := query["query"]
|
|
|
filter := qb.Filtered.Filter
|
|
|
if filter != nil && filter.Bool != nil { //有filter
|
|
|
- index := 0 //记录range的位置
|
|
|
- for i, m := range filter.Bool.Must {
|
|
|
+ index := 1 //记录range的位置
|
|
|
+ for _, m := range filter.Bool.Must {
|
|
|
mMap := m.(map[string]interface{})
|
|
|
- if mMap["range"] != nil { //有range
|
|
|
- index = i
|
|
|
- break
|
|
|
+ qu.Debug(mMap, mMap["range"])
|
|
|
+ if esRange, ok := mMap["range"].(map[string]interface{}); ok && esRange != nil { //有range
|
|
|
+ if esRange["publishtime"] != nil {
|
|
|
+ index = 0
|
|
|
+ break
|
|
|
+ }
|
|
|
}
|
|
|
+ break //只取第一个
|
|
|
}
|
|
|
- if index != 0 {
|
|
|
+ if index == 0 {
|
|
|
filter.Bool.Must[index] = tmpRange
|
|
|
} else {
|
|
|
filter.Bool.Must = append(filter.Bool.Must, tmpRange)
|