簡體   English   中英

Kibana 6合並2個過濾器

[英]Kibana 6 merging 2 filters

我有2個效果很好的過濾器:1.匹配短語“ NA”

{
  "query": {
    "match": {
      "region.keyword": {
        "query": "NA",
        "type": "phrase"
      }
    }
  }
}

2.使用腳本化的字段拉過濾器,以顯示不在0-7之間的所有小時數:

{
  "script": {
    "script": {
      "inline": "boolean gte(Supplier s, def v) {return s.get() >= v} boolean lt(Supplier s, def v) {return s.get() < v}gte(() -> { doc['@timestamp'].date.hourOfDay }, params.gte) && lt(() -> { doc['@timestamp'].date.hourOfDay }, params.lt)",
      "params": {
        "gte": 0,
        "lt": 7,
        "value": ">=0 <7"
      },
      "lang": "painless"
    }
  }
}

我想將其分組為一個過濾器,這樣它的“ NA小時數不會在0-7之間”,這樣我就可以更改區域和時間,並仍然應用其他過濾器。

也不確定如何添加這種自定義過濾器,因為添加過濾器僅允許我輸入1個字段

在使用可視化工具並發現之前,請確保在“ Management -> Index Pattern -> Create index pattern ”下Management -> Index Pattern -> Create index pattern並添加將在其上應用過濾器的索引的名稱。

現在,合並您在問題中添加的查詢,合並后的查詢將如下所示:

{
  "query": {
    "bool": {
      "must": [
        {
          "region.keyword": {
            "query": "NA",
            "type": "phrase"
          }
        },
        {
          "script": {
            "script": {
              "inline": "boolean gte(Supplier s, def v) {return s.get() >= v} boolean lt(Supplier s, def v) {return s.get() < v}gte(() -> { doc['@timestamp'].date.hourOfDay }, params.gte) && lt(() -> { doc['@timestamp'].date.hourOfDay }, params.lt)",
              "params": {
                "gte": 0,
                "lt": 7,
                "value": ">=0 <7"
              },
              "lang": "painless"
            }
          }
        }
      ]
    }
  }
}

發現部分

在Kibana的“ 發現”部分中,在index pattern section選擇索引名稱(請參閱圖像鏈接) ,然后單擊“ Add a filter ,在右側會看到一個選項“ Edit Query DSL

復制並粘貼上面的查詢。 您應該能夠在“ Document Table看到結果,即圖形下的文檔詳細信息。

展示台

好吧,您沒有在問題中提到這是否與特定的可視化工具(或“發現”選項卡)相關,但是就像我們在“發現”部分添加過濾器的方式一樣,您也可以在可視化工具中這樣做(例如Metric Visualizer ,您將在“ Add a filter下看到“ Edit Query DSL部分)

讓我知道這是否有幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM