1. 程式人生 > 實用技巧 >[Kibana] Kibana 語法

[Kibana] Kibana 語法

以Key:Value的形式構建查詢條件,
Key即是域名(Field), Value即是值項(Term)
預設域名可以省略掉, Lucene的預設域是text域, kibana的預設域是message域, message會包含所有日誌內容.

title:abc   # 在title這個域中搜索 abc, 所有title 包含 abc 都會被搜尋出來. 
title:"abc def"  # 在title這個域中搜索 abc def 這個完整的字串.
title:abc def   # 這個寫法不同於上面的查詢語句, 其實是兩個查詢條件, 在title域中搜索abc, 並且在預設域中搜索def.
title:"1=1"   # 如果term有空格或等於號等特殊字元, 需要用雙引號括起來.

對於數值項可以使用>、<、=操作符
account_number:<100
多個查詢項的組合, 使用大寫的 AND 、 OR 、NOT實現與或非.
title:"The Right Way" AND text:go
account_number:<100 AND balance:>47500
支援萬用字元
Kibana 一般不需要使用萬用字元, 因為 Kibana 的 key:value 查詢條件, 只要域值包含 value 就能被搜尋出來, 除非我們的值項有多個特徵, 可以用萬用字元將多個特徵連起來.
? 號可以匹配任意一個字元

  • 號可以匹配任意多個字元
    但萬用字元可以放在term的中間或尾部, 不能放在term的最前面.
    支援正則
    ES 中正則效能很差,而且支援的功能也不是特別強大,儘量不要使用, 正則表示式需要用//括起來.
    message:/[mb]oat/ # 匹配 moat 或者 boat
    範圍限定
    方括號代表包含邊界值, 花括號代表不包含邊界值
    mod_date:[20020101 TO 20030101]
    title:{Aida TO Carmen}