Kibana使用Timelion根据时间序列展示数据

编程入门 行业动态 更新时间:2024-10-27 00:31:24

Kibana使用Timelion根据时间<a href=https://www.elefans.com/category/jswz/34/1769864.html style=序列展示数据"/>

Kibana使用Timelion根据时间序列展示数据

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。

文章目录

  • 1. 创建索引
  • 2. 添加数据
  • 3. 创建Index Patterns
  • 4. Discover查看数据
  • 5. 使用Timelion查看时序数据
    • 5.1 Timelion左侧时序数据显示区域
    • 5.2 Timelion右侧时间及语法区域
      • 5.2.1 时间范围选择
      • 5.2.2 Interval间隔
      • 5.2.3 Timelion expression语法
      • 5.2.4 时序数据图展示


ELK参考文章:
ELK下载(Elasticsearch、Logstash、Kibana)
Elasticsearch安装
Kibana安装、配置
kibana操作elasticsearch(增删改查)
Java操作Elasticsearch(新增数据)
kibana查看和展示es数据(index pattern、discover、dashboard)
Kibana功能栏中找不到Timelion功能模块的解决

1. 创建索引

创建名称为kibana-test-2023.11.01的索引,并设置参数

PUT kibana-test-2023.11.01
{"settings": {"number_of_shards": 2,"number_of_replicas": 1},"mappings": {"properties": {"name": {"type": "text"},"number": {"type": "keyword"},"age": {"type": "integer"},"date": {"type": "date","format": "yyyy-MM-dd HH:mm:ss || yyyy-MM-dd || epoch_millis"}}}
}

注:timestamp时间字段相关
这里的重点是时间参数的设置
必须要有date类型的字段才可以,不然后续timelion使用无效
date字段名可以自定义,但是他的type类型的值必须是date
format是时间对应的格式,也就是后续添加数据时时间的格式为上面三种,如2023-11-01 13:26:56或者2023-11-01或者使用毫秒数

2. 添加数据

将下列数据在控制台执行

POST kibana-test-2023.11.01/_doc
{"name":"李元芳","age":10086,"number":"00001","date":"2023-11-01 10:07:40"
}
POST kibana-test-2023.11.01/_doc
{"name":"狄仁杰","age":12315,"number":"00002","date":"2023-11-01 10:35:40"
}
POST kibana-test-2023.11.01/_doc
{"name":"百里守约","age":10000,"number":"00003","date":"2023-11-01 10:44:40"
}
POST kibana-test-2023.11.01/_doc
{"name":"孙悟空","age":10010,"number":"00004","date":"2023-11-01 11:07:40"
}
POST kibana-test-2023.11.01/_doc
{"name":"孙尚香","age":12345,"number":"00005","date":"2023-11-01 12:07:45"
}
POST kibana-test-2023.11.01/_doc
{"name":"武则天","age":12123,"number":"00006","date":"2023-11-01 13:27:50"
}

3. 创建Index Patterns

找到index patterns位置
不同的版本略有差异,旧版本在Management界面中可直接看到
新版本则在侧栏Management-->Stack Management-->kibana-->Index Patterns
进入Index Patterns界面后直接点Create index pattern创建
如下,右侧可看到索引列表,填入索引名称,也可以不写完整的名称用*作为后缀来模糊匹配

填完名称后,可以看到Timestamp field可以点(如果创建索引时没有设置时间字段对应的date类型参数映射,则这里无法选择),点开后会弹出我们创建时设置的时间字段date

选择date然后Create index pattern创建即可完成

4. Discover查看数据

kibana左侧栏Analytics-->Discover进入查看数据界面
如果不是默认的index,则需要选择,打开索引列表下拉框,选择刚刚创建好的index pattern对应的索引名称kibana-test-2023.11.01

此时看到该索引的所有数据,并且上方为时间展示的视图内容,如果图标中没有数据,则是因为我们的数据创建的时间不在默认图标选择的时间范围内,修改图标展示的时间范围即可,如图

刚刚创建的数据为今天2023-11-01,所以选择今天Today来展示,就会看到

注:时区问题
这里有个问题,就是数据的时区问题,我们看到上图展示的时间并不是我们创建数据的时间,图标的时间和数据中的时间快了8个小时,这是时区问题,解决方法请参考另一篇文章:kibana显示时间数据时的时区问题及时间显示格式设置

5. 使用Timelion查看时序数据

找到Timelion的位置
kibana侧边栏中Analytics-->Visualize Library-->Create new visualization-->Aggregation based-->Explore options-->Timelion

5.1 Timelion左侧时序数据显示区域

这里如图没有数据,主要跟默认索引、右侧的时间范围以及语法有关

5.2 Timelion右侧时间及语法区域

包含了时间范围选择间隔es语法输入

5.2.1 时间范围选择

这里需要注意的地方,右侧的时间范围选择,默认是Last 15 minutes,表示展示此刻之前15分钟范围的数据
只有数据的时间字段值在这个时间范围内才会被显示出来
通过点击时间框前的日历小图标来快速选择时间范围

或者自定义输入时间范围,点时间框,会有三种时间自定义(绝对、相对、现在)

刚刚我创建的数据都是今天的,所以想要全部显示出来就将时间范围换成了Today

5.2.2 Interval间隔

这里应该是图形界面显示数据时,刷新此数据信息的时间间隔
默认是Auto,这里不做修改

5.2.3 Timelion expression语法

填写es的语法,根据语法展示时序数据的内容
默认是.es(*)
系统默认的索引是空的,即使默认的索引不是空的,但是索引中没有时间date类型的字段映射值,也是显示不出数据的
只有当默认索引不为空,且该默认索引的映射中有date类型的字段,并且该字段在创建index pattern时被选中,且数据时间在右侧栏展示时间范围内,才会有数据展示出来

这里我们直接使用语法指定索引,然后进行数据展示
新一点的版本都有语法提示信息,使用起来更方便

使用语法查询

.es(index=kibana-test-2023.11.01,timefield=date,metric=sum:age)

5.2.4 时序数据图展示

执行后可看到左侧区域展示出随时间变化的数据


感谢阅读,祝君暴富!

更多推荐

Kibana使用Timelion根据时间序列展示数据

本文发布于:2023-11-16 15:18:34,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1626920.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:序列   时间   数据   Kibana   Timelion

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!