kibana discover查询语法

本文介绍了如何使用Kibana的Discover功能查询和分析ES中的日志数据,特别是KQL(Kibana Query Language)的使用,包括匹配、短语、组合条件和范围查询等操作,帮助提升日志分析效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

最近公司要求所有应用接入统一日志管理平台ELK,所以经常会到kibana看板查询日志,为了提高问题排查效率,作为开发人员必需掌握Kibana Query Language。语法类型的知识,坐下笔记以防不时之需。


一、kibana是什么?

kiban是ELK技术栈里一个用来进行数据展示、分析、可视化的工具。主要数据源来自ES,经常会用它来做分布式系统应用日志的查询和分析。今天主要介绍的是如何用discover这个功能,来搜索我们已经记录到ES里的java应用日志。

二、使用步骤

1.存数据

不讲解

2.创建索引

不讲解

3.查询日志

假设我们已经做好了前两部,那么就可以通过discover来探索我们的日志数据了。

上图中红色框1的位置 就是我们索引日志时,使用的index name,这里支持模糊配置。选择好我们要分析的index之后,就可以在红框2里,输入KQL(kibana query language)来进行数据的过滤和分析了。有一定开发经验的同学都知道,日志是我们排查线上故障的一个重要帮手,很多情况下我们就是根据错误日志来定位问题,所以说分析的日志效率就决定了我们排查故障恢复业务的效率,从而提高系统可用性。下面主要讲解下KQL的语法,方便我们快速查找日志。

kibana7.0之后,开始支持KQL,再此之前,都是通过Lucene语法来查询的。为了方便讲解,假设我们记录日志index时,有4个field:服务器serverIp、日志等级level、日志详情message、响应码code。

3.1 匹配:

serverIp:10.100.249.111

3.2 短语

message:"Quick brown fox" 与message:Quick brown fox

带引号的话,会完全按照短语内容来匹配;不带引号,会做分词

3.3 组合

level:info and serverIp:1.1.1.1

serverIp:1.1.1.2 or serverIp:1.1.1.1

3.2 条件分组

level:INFO and (serverIp:1.1.1.2 or serverIp:1.1.1.1)

message:(aaa and bbb and ccc)

3.4 范围

code>200

not code:200

not (code:200 or code:300)


总结

为了方便自己查询,特此记录!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值