Kibana 查询和过滤器编辑

本主题简要介绍了用于搜索 Packetbeat 数据的一些有用查询。有关查询语法的完整描述,请参阅Kibana 用户指南中的搜索您的数据

在 Kibana 中,您可以通过输入搜索查询或点击可视化中的元素来筛选事务。

创建查询编辑

Discover 页面上的搜索栏提供了一种从所选时间范围内查询特定事务子集的方法。它允许使用布尔运算符、通配符和字段过滤。例如,如果您要查找 HTTP 重定向,则可以搜索 http.response.status_code: 302

Kibana query

字符串查询编辑

查询可以包含一个或多个单词或短语。短语是双引号包围的一组单词,例如 "test search"

要搜索由 Mozilla Web 浏览器版本 5.0 发起的 HTTP 请求

"Mozilla/5.0"

要搜索包含以下消息的所有事务

"Cannot change the info of a user"

要搜索确切的字符串,您需要将字符串用双引号括起来。如果不用引号,示例中的搜索将匹配包含以下任何单词的任何文档:"Cannot" OR "change" OR "the" OR "info" OR "a" OR "user"。

要搜索所有使用“chunked”编码的事务

"Transfer-Encoding: chunked"

基于字段的查询编辑

Kibana 允许您搜索特定字段。

要仅查看 HTTP 事务

type: http

要仅查看失败的事务

status: Error

要仅查看 INSERT 查询

method: INSERT

正则表达式查询编辑

Kibana 支持使用正则表达式进行过滤和表达式。例如,要搜索所有返回 JSON 作为返回值类型的 HTTP 响应

http.response_headers.content_type: *json

有关语法的更多详细信息,请参见Elasticsearch 正则表达式查询

范围查询编辑

范围查询允许字段具有介于上下限之间的值。间隔可以包含或排除边界,具体取决于您使用的括号类型。

要搜索响应时间大于或等于 10 毫秒的慢速事务

event.duration: [10000000 TO *]

要搜索响应时间大于 10 毫秒的慢速事务

responsetime: {10000000 TO *}

布尔查询编辑

布尔运算符(AND、OR、NOT)允许通过逻辑运算符组合多个子查询。

AND、OR 和 NOT 等运算符必须大写。

要搜索除 MySQL 事务以外的所有事务

NOT type: mysql

要搜索所有带有错误的 MySQL INSERT 查询

type: mysql AND method: INSERT AND status: Error

Kibana 查询语言 (KQL) 还支持括号来分组子查询。

要搜索响应时间大于或等于 30 毫秒的 INSERT 或 UPDATE 查询

(method: INSERT OR method: UPDATE) AND event.duration >= 30000000

创建过滤器编辑

在 Kibana 中,您还可以通过点击可视化中的元素来筛选事务。例如,要筛选来自特定 IP 和端口的所有 HTTP 重定向,请点击事务详细信息表中 client.ipclient.port 字段旁边的筛选值为 filterforval icon 图标。要排除来自该 IP 和端口的 HTTP 重定向,请点击筛选出值为 filteroutval icon 图标。

Filter from context

选定的过滤器将显示在搜索框下方。

Kibana filters