夜莺-Nightingale
夜莺V6
项目介绍 架构介绍
快速开始 快速开始
黄埔营
安装部署 安装部署
升级
采集器 采集器
使用手册 使用手册
API API
数据库表结构 数据库表结构
FAQ FAQ
开源生态
Prometheus
版权声明
第1章:天降奇兵 第1章:天降奇兵
第2章:探索PromQL 第2章:探索PromQL
第3章:Prometheus告警处理 第3章:Prometheus告警处理
第4章:Exporter详解 第4章:Exporter详解
第5章:数据与可视化 第5章:数据与可视化
第6章:集群与高可用 第6章:集群与高可用
第7章:Prometheus服务发现 第7章:Prometheus服务发现
第8章:监控Kubernetes 第8章:监控Kubernetes
第9章:Prometheus Operator 第9章:Prometheus Operator
参考资料

ES 日誌查詢目前支持兩個查詢語法,下面分別介紹

query string 語法

query string 查詢語法支持以下幾種常見的查詢方式:

欄位查詢

可以指定欄位名稱進行查詢:

  • status:active - 查詢 status 欄位包含 active 的記錄
  • title:(quick OR brown) - 查詢 title 欄位包含 quick 或 brown 的記錄
  • author:"John Smith" - 查詢 author 欄位包含完整短語 “John Smith” 的記錄

萬用字元查詢

支持使用 ?* 萬用字元:

  • qu?ck - ? 匹配單個字元
  • bro* - * 匹配零個或多個字元

模糊查詢

使用 ~ 運算符進行模糊匹配:

  • quikc~ - 匹配與 quick 相似的詞
  • "fox quick"~5 - 短語查詢中的詞之間可以相隔最多5個位置

範圍查詢

支持數值和日期範圍:

  • count:[1 TO 5] - 閉區間,包含1和5
  • count:{1 TO 5} - 開區間,不包含1和5
  • date:[2022-01-01 TO 2022-12-31]
  • age:>10 - 大於10
  • age:>=10 - 大於等於10

布林運算符

可以使用 AND、OR、NOT 等布林運算符:

  • quick AND brown - 同時包含兩個詞
  • quick OR brown - 包含其中任意一個詞
  • quick NOT fox - 包含 quick 但不包含 fox

更多詳細語法可以參考 Elasticsearch 官方文檔

KQL 語法

KQL (Kibana Query Language) 是一種簡單的基於文本的查詢語言。下面介紹幾個常用的查詢示例:

示例1:精確匹配

說明:查詢 method 欄位值為 GET 的日誌

過濾條件:method: GET

示例2:使用萬用字元

說明:查詢所有以 error 開頭的日誌級別

過濾條件:level: error*

示例3:範圍查詢

說明:查詢響應時間在 1 秒到 5 秒之間的請求

過濾條件:response_time >= 1 and response_time <= 5

示例4:組合查詢

說明:查詢 method 為 POST 並且狀態碼為 500 或 502 的錯誤日誌

過濾條件:method: POST and status_code: (500 or 502)

示例5:巢狀欄位查詢

說明:查詢用戶信息中名字為 Alice,姓氏為 White 的日誌

過濾條件:user:{ first: "Alice" and last: "White" }

更多詳細的 KQL 語法可以參考 Kibana 官方文檔

快猫星云 联系方式 快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云
OpenSource
开源版
Flashcat
Flashcat