1234567891011121314151617181920212223242526272829303132333435363738 |
- package util
- import (
- util "app.yhyue.com/moapp/jybase/common"
- elastic "app.yhyue.com/moapp/jybase/esv1"
- "log"
- "runtime"
- )
- // GetAggs 聚合查询
- func GetAggs(index, itype, query string) (aggs elastic.Aggregations, count int64) {
- defer util.Catch()
- client := elastic.GetEsConn()
- defer func() {
- go elastic.DestoryEsConn(client)
- }()
- if client != nil {
- defer func() {
- if r := recover(); r != nil {
- log.Println("[E]", r)
- for skip := 1; ; skip++ {
- _, file, line, ok := runtime.Caller(skip)
- if !ok {
- break
- }
- go log.Printf("%v,%v\n", file, line)
- }
- }
- }()
- searchResult, err := client.Search().Index(index).Type(itype).Source(query).Do()
- if err != nil {
- log.Println("从ES查询出错", err.Error())
- }
- count = searchResult.Hits.TotalHits
- aggs = searchResult.Aggregations
- }
- return
- }
|