kibana使用的lucene查詢語法

jopen 8年前發布 | 69K 次閱讀 Lucene 搜索引擎

kibana在ELK陣營中用來查詢展示數據
elasticsearch構建在Lucene之上,過濾器語法和Lucene相同

kibana使用的lucene查詢語法 - code_cj的個人空間
kibana4官方演示頁面

全文搜索

在搜索欄輸入login,會返回所有字段值中包含login的文檔
kibana使用的lucene查詢語法

使用雙引號包起來作為一個短語搜索
"like Gecko"

字段

也可以按頁面左側顯示的字段搜索
限定字段全文搜索:field:value
精確搜索:關鍵字加上雙引號 filed:"value"
http.code:404 搜索http狀態碼為404的文檔

字段本身是否存在
_exists_:http:返回結果中需要有http字段
_missing_:http:不能含有http字段

通配符

? 匹配單個字符
* 匹配0到多個字符

kiba?ael*search

? * 不能用作第一個字符,例如:?text *text

正則

es支持部分正則功能
mesg:/mes{2}ages?/

模糊搜索

~:在一個單詞后面加上~啟用模糊搜索

first~ 也能匹配到 frist

還可以指定需要多少相似度
cromm~0.3 會匹配到 from 和 chrome
數值范圍0.0 ~ 1.0,默認0.5,越大越接近搜索的原始值

近似搜索

在短語后面加上~
"select where"~3 表示 select 和 where 中間隔著3個單詞以內

范圍搜索

數值和時間類型的字段可以對某一范圍進行查詢
length:[100 TO 200]
date:{"now-6h" TO "now"}
[ ] 表示端點數值包含在范圍內,{ } 表示端點數值不包含在范圍內

邏輯操作

AND
OR

+:搜索結果中必須包含此項
-:不能含有此項
+apache -jakarta test:結果中必須存在apache,不能有jakarta,test可有可無

分組

(jakarta OR apache) AND jakarta

字段分組

title:(+return +"pink panther")

轉義特殊字符

+ - && || ! () {} [] ^" ~ * ? : \
以上字符當作值搜索的時候需要用\轉義






參考鏈接
https://lucene.apache.org/core/5_2_0/queryparser/org/apache/lucene/que...
http://kibana.logstash.es/content/elasticsearch/api/search.html


來自: http://segmentfault.com/a/1190000002972420

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!