2017-04-25 21 views
0

以下是此領域的映射:如何在kibana的字段值中搜索「 - 」?

"username": { 
    "type": "text", 
    "norms": false, 
    "fields": { 
    "keyword": { 
     "type": "keyword" 
    } 
    } 
}, 

我有偶爾有值的字段「 - 」: enter image description here

我點擊「爲值過濾」,這是在過濾器上,創建時間:enter image description here

但是,當我搜索這個值時,它說沒有找到結果。

如何逃避 「 - 」?

我試過「\ - 」,但沒有骰子

我試圖檢查值「存在」的建議,但是這也返回0結果:enter image description here

在kibana搜索欄,並且還試圖!(_exists_:"username")也返回0結果。

還運行(_exists_:"username")包括文檔有和沒有用戶名字段

我也試過這個返回結果爲0:

(_missing_:"username") 
+0

在Kibana'-'表示字段沒有值通常它是空的。如果你想搜索所有具有'用戶名'值爲'null'的文檔,那麼你可以使用'exists'查詢。 – avr

+0

該查詢的外觀如何? – red888

+0

'GET/_search { 「查詢」:{ 「布爾」:{ 「must_not」:{ 「存在」:{ 「字段」: 「用戶名」 } } } } }' – avr

回答

1

正如你usernametext型與standard analyzer分析,倒排索引將沒有標記username其中username.keywordkeyword類型,它將具有倒數索引中的確切值-

您可以在以下幾個方面尋找它:

  1. 從Kibana搜索欄:

    username.keyword: "-"

  2. 從Kibana過濾器:

    { "term": { "username.keyword": "-" } }

  3. 從感測插件:

    GET _search { "query": { "term": { "username.keyword": "-" } } }