前言
簡單總結一下KQL的語法,
因為還要跟同事講這套軟體該怎麼查詢。
正文
KQL其實沒很複雜,
建議把介紹Kibana Query Language看完後基本上就會了。
主要常用的是,使用 特定欄位搜尋,
-
萬用字元 *
例如,
今天要搜尋一個 pod Name 叫 grafana
那KQL 可輸入
kubernetes.pod.name: *grafana*
搜尋出來的名稱,只要是 中間有 grafana的通通會列出。
覺得前面名稱太長的話,輸入pod.name,用下拉選擇就好。
- 引號使用" "
將裡面的字變成一個詞搜尋
message: "hello world"
- 不使用引號
裡面的字都會分別搜尋,已下面來說就是 會搜尋 hello 跟 world
kubernetes.pod.name: hello world
- and 跟 or 條件
多條件查詢
message: "hello world" and kubernetes.pod.name:*grafana*
- not 否定
not (kubernetes.pod.name: *grafana*)
- 大於 小於 等於 判斷式 >, >= , <,<=
@timestamp < "2021-01-30"
-
還有一種不使用KQL的查詢,Lucene
這種語法可支援正則表達式,但KQL不支援。
ref.Lucene query syntax -
nested fields 看來是可以查詢整串的json
但我想不到可以運用在哪
ref.
0 意見:
張貼留言