elasticsearch,Rest,elasticsearch" /> elasticsearch,Rest,elasticsearch" />

RESTAPI查询字符串

RESTAPI查询字符串,rest,elasticsearch,Rest,elasticsearch,我想过滤掉小于10的和 { "range":{ "Sum_PKTS":{ "gte": 10 } } } -- GET /_search { "size" : 0, "query": { "bool": { "should": [ { "match":{"IPV4_DST_ADDR":"192.168.0.0/16"}

我想过滤掉小于10的和

{
   "range":{
        "Sum_PKTS":{
                "gte": 10
              }
       }
}
--

GET /_search
{
  "size" : 0,
  "query": {
    "bool": {
      "should": [
        {
            "match":{"IPV4_DST_ADDR":"192.168.0.0/16"}
        },
        {
            "match":{"IPV4_SRC_ADDR":"192.168.0.0/16"}
        }
      ],
      "minimum_should_match": 1,
      "must":[
        {
          "range":{
            "@timestamp":{
            "gte":"now-5m"
            }
          }
        }
      ]
    }
  },
    "aggs": {
      "DST_Local_IP": {
        "filter": {
          "bool": {
            "filter": {
                "match":{"IPV4_DST_ADDR":"192.168.0.0/16"}
              }
            }
          },
          "aggs": {
                "genres":{
                    "terms" : {
                    "field" : "IPV4_DST_ADDR" ,
                    "order" : { "Sum_PKTS" : "desc" }
                    },
                    "aggs":{
                     "Sum_PKTS": {
                     "sum" : { "field" : "Packet" }
                    }
              }
            }
          }
      }, 
      "SRC_Local_IP": {
      "filter": {
        "bool": { 
          "filter": {
              "match":{"IPV4_SRC_ADDR":"192.168.0.0/16"}
            }
          }
        },
        "aggs": {
            "genres":{
                "terms" : {
                    "field" : "IPV4_SRC_ADDR" ,
                    "order" : { "Sum_PKTS" : "desc" }
                    },
                    "aggs":{
                    "Sum_PKTS": {
                    "sum" : { "field" : "Packet" }
                }
              }
            }
          }
      }
  }
}
如何合并这两个查询字符串? 可能吗

顺便说一句,“Sum_PKTS”字段是按“field”:“Packet”求和的

目标是过滤本地IP并聚合“packet”字段,最后过滤值小于10的Sum_PKTS

{
   "range":{
        "Sum_PKTS":{
                "gte": 10
              }
       }
}
--

GET /_search
{
  "size" : 0,
  "query": {
    "bool": {
      "should": [
        {
            "match":{"IPV4_DST_ADDR":"192.168.0.0/16"}
        },
        {
            "match":{"IPV4_SRC_ADDR":"192.168.0.0/16"}
        }
      ],
      "minimum_should_match": 1,
      "must":[
        {
          "range":{
            "@timestamp":{
            "gte":"now-5m"
            }
          }
        }
      ]
    }
  },
    "aggs": {
      "DST_Local_IP": {
        "filter": {
          "bool": {
            "filter": {
                "match":{"IPV4_DST_ADDR":"192.168.0.0/16"}
              }
            }
          },
          "aggs": {
                "genres":{
                    "terms" : {
                    "field" : "IPV4_DST_ADDR" ,
                    "order" : { "Sum_PKTS" : "desc" }
                    },
                    "aggs":{
                     "Sum_PKTS": {
                     "sum" : { "field" : "Packet" }
                    }
              }
            }
          }
      }, 
      "SRC_Local_IP": {
      "filter": {
        "bool": { 
          "filter": {
              "match":{"IPV4_SRC_ADDR":"192.168.0.0/16"}
            }
          }
        },
        "aggs": {
            "genres":{
                "terms" : {
                    "field" : "IPV4_SRC_ADDR" ,
                    "order" : { "Sum_PKTS" : "desc" }
                    },
                    "aggs":{
                    "Sum_PKTS": {
                    "sum" : { "field" : "Packet" }
                }
              }
            }
          }
      }
  }
}

提前感谢!

您可以使用a实现您想要的(请参阅下面的两个
Sum\u PKTS\u gte\u 10
聚合):


非常感谢!这是我想要的答案。很酷,很高兴它有帮助!