ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Kibana——Discover

2022-08-06 19:20:53  阅读:230  来源: 互联网

标签:Discover Kibana 查询 Filter 时间 日志


 

​前言

Kibana 是一款开源的数据分析和可视化平台,它是Elastic Stack 成员之一,旨在与 Elasticsearch 配合使用。

在Kibana中 搜索、查看存储在 Elasticsearch 索引中的数据并与之交互,轻松地执行高级数据分析并在各种图表、表格和地图中可视化数据。

基于Kibana 7.10.0

 

版图分解

首先,Kibana的几大功能模块如图所示,大块上来分为5个大类:

  • Kibana —— 基础功能
  • Observability —— 可观测性
  • Security —— 安全
  • Enterprise search —— 企业级搜索
  • Management —— 管理设置

可以看出来整个Elastic生态和目前的使用情况,Kibana也在左上角提供了浮层导航来方便快速切换功能模块,本文作为系列文章的开篇,先就Kibana基础功能中最高频场景Discover进行拆解和分析。

作为查询数据,快递定位和挖掘价值的入口,Discover扮演了Kibana中最重要的角色,一般情况下我们通过Discover得到一些特定问题的答案,了解当下的发了了什么情况,官方给出来的定位分为以下三个方面:

  • 选择(Select):通过对数据集和时间范围的选择,来过滤和查询结果
  • 探索(Explore):通过对数据的详细分析,快速得到数据内容的分析结果
  • 展示(Present):将数据结构可视化或者存储下来

整体Discover的交互体验在7.0之后没有太多的变化,可以简单总结为

  • 头部:输入模块,query输入、时间选择、保存查询、设置分享等
  • 左侧:目录切换、Field操作、快速分析
  • 核心区域:分布直方、文档详情

针对一些细节,下面进一步分析。

 

头部

  • 1. 保存查询

Kibana支持将查询语句、查询时间返回、当前查询的Filter一起保存为一个SAVED QUERIES。

Kibana更多功能是让当下的保存更完备,支持保存当前的时间区间、语句以及Filter参数:

  • 2. 查询分析语句输入

在7.0.0,Kibana将KQL(Kibana Query Language)作为默认的查询分析语言,从而替代了6.x版本中Lucene查询语法,不难看出语法这一块Kibana还是想降低用户使用的门槛,也在KQL的输入上做了很多autoComplete的工作:

与此同时Kibana还将Filter作为一个单独的功能提取出来,本质上来说是一个Filter Query Builder的功能,通过Filed + Operator + Value的形式来进行可视化配置,同时也支持转换为一个Query DSL。每一个Filter也支持加上对应的标签,并且可以对同类标签进行批量设置,方便快速变化分析维度,在7.x之后,Filter还支持了单独的下拉列表,可以对其进行Enable、Disabled、Pin、UnPin、Invert和Remove等操作。

  • 3. 时间选择器

Kibana在7.x之后升级了其时间选择器,看起来十分强大,支持秒、分钟、小时、天、周、月、年等时间粒度,我们也可以将其分为两个大类:

  1. 快速设置
    • 快速选择(Quick select)
      支持过去时间、将来时间的配置,而且支持设置范围和粒度来动态选择时间,并且支持快速访问前一个时间窗口和后一个时间窗口,对于时间前后分析来说十分有用
    • 常见选择(Commonly used)
      提供一些常见的时间窗口配置,帮助快速查看一个大概的范围
    • 最近选择(Recently used date ranges)
      历史时间选择记录
    • 自动刷新(Refresh every)

  1. 自定义设置
    Kibana提供了时间描述的语言,可以自己通过编写去得到一个自定义的窗口,分类如下:
    • 绝对时间
      获取一个具体的时间点,不会因为时间而改变
    • 相对时间
      类似快速选择,提供就当前时间点之前,之后的粒度选择,自定义一个范围。同时支持了整点设置(Round),抹去选择粒度之后的时间毛刺,部分相对时间会随着时间流逝而动态变化。
      可以通过一个格式来定义具体的相对时间点,比如当前时间点3小时前可以描述为~ 3 hours ago,当前时间点15分钟之后可以描述为~ in 15 minutes
    • 当前(Now)

 

左侧

Kibana的左侧主要提供的都是和Index Pattern相关的内容。

  • 1. 切换index pattern

  • 2. 快速筛选index中的Filed信息

  • 3. 操作可视区域Filed

  • 4. 获取Filed快速预览

 

 

核心区域

核心区域作为主视觉中最关键的地方,支持了分布直方图和日志文档的展示,如果字段中没有@timestamp,则不会出现时间选择器和分布直方图。

  • 1. 分布直方图

分布直方图用于查看当前时间范围的日志分布概览,分析异常的波峰或波谷,Kibana在分布直方图上支持了手势事件,拖拽和点击都可快速缩小时间范围进行更精确的分析。

  • 2. 日志主体

Kibana默认为Time字段(需要有@timeStamp)和_source字段进行展示,可以通过左侧来变换字段是否为一列进行展示。在日志主体上,Kibana并未添加太多的事件触发,更多的是提供日志的预览,Kibana把这个交互变成了单一document的预览:

在单一日志上,纵向平铺了所有的字段,也可以将该条日志切换为JSON显示,非常直观方便。

除此之外支持快速将这一字段的值变成一个Filter或者操作这个Filed为显示列:

当然,不可缺少的Kibana也支持当前日志的上下文查询,到另外一个界面去预览前后的文档:

 

 

 

 

引用:

标签:Discover,Kibana,查询,Filter,时间,日志
来源: https://www.cnblogs.com/caoweixiong/p/16550674.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有