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 时序数据图展示

执行后可看到左侧区域展示出随时间变化的数据
在这里插入图片描述


感谢阅读,祝君暴富!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/160330.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

项目实战:根据关键字检索,查找相应的水果

1、在index.html绑定查询点击事件 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><link rel"stylesheet" href"style/index.css"><script src"…

5.2用队列实现栈(LC225-E)

算法&#xff1a; 其实这道题不用像上一道题一样&#xff0c;用两个队列实现栈。 由于队列的数据结构特性。用一个队列就可实现栈。 难点还是在出队的时候&#xff1a; 比如队列[1,2,3]&#xff0c;要模拟一个栈入栈就是直接append&#xff08;其实就是C中的push&#xff0…

Scala和Play WS库编写的爬虫程序

使用Scala和Play WS库编写的爬虫程序&#xff0c;该程序将爬取网页内容&#xff1a; import play.api.libs.ws._ import scala.concurrent.ExecutionContext.Implicits.global ​ object BaiduCrawler {def main(args: Array[String]): Unit {val url ""val proxy…

AI:53-基于机器学习的字母识别

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌本专栏包含以下学习方向: 机器学习、深度学…

python用cv2画图(line, rectangle, text等)

Python做图像图形研究的时候&#xff0c;通常需要画很多辅助几何形状&#xff08;比如bounding box等&#xff09;。基于opencv的几何图形绘制具有易用性&#xff0c;而且天然能和numpy数组交互。 本文总结了几种常用的cv2画几何图形的方法&#xff0c;当一个简易的手册使用&a…

第11章_数据处理之增删改

文章目录 1 插入数据1.1 实际问题1.2 方式 1&#xff1a;VALUES的方式添加1.3 方式2&#xff1a;将查询结果插入到表中演示代码 2 更新数据演示代码 3 删除数据演示代码 4 MySQL8新特性&#xff1a;计算列演示代码 5 综合案例课后练习 1 插入数据 1.1 实际问题 解决方式&#…

【嵌入式开发工具】STM32+Keil实现软件工程搭建与开发调试

本篇文章介绍了使用Keil来对STM32F103C8芯片进行初始工程搭建&#xff0c;以及开发与工程调试的完整过程&#xff0c;帮助读者能够在实战中体会到Keil这个开发环境的使用方法&#xff0c;了解一个嵌入式工程从无到有的过程&#xff0c;并且具备快速搭建一个全新芯片对应最小软件…

第十五章 EM期望极大算法及其推广

文章目录 导读符号说明混合模型伯努利混合模型(三硬币模型)问题描述三硬币模型的EM算法1.初值2.E步3.M步初值影响p,q 含义 EM算法另外视角Q 函数BMM的EM算法目标函数LEM算法导出 高斯混合模型GMM的EM算法1. 明确隐变量, 初值2. E步,确定Q函数3. M步4. 停止条件 如何应用GMM在聚…

uniapp原生插件之安卓SVGA动画原生插件

插件介绍 安卓SVGA插件是原生组件式插件&#xff0c;支持SVGA动画文件格式播放&#xff0c;支持网络地址播放 插件地址 安卓SVGA动画原生插件 - DCloud 插件市场 详细使用文档 uniapp 安卓SVGA动画原生插件 超级福利 uniapp 插件购买超级福利 用法 插件权限 android…

GD32 单片机 硬件I2C死锁解决方法

死锁的复现方式 在I2C恢复函数下个断点&#xff08;检测到I2C多次超时之后&#xff0c;应该能跳转到I2C恢复函数&#xff09;使用镊子&#xff0c;将SCL与SDA短接&#xff0c;很快就能看到程序停到恢复函数的断点上&#xff0c;此时再执行恢复函数&#xff0c;看能否正常走出&…

美国航空公司飞行员工会遭受勒索软件攻击

导语&#xff1a;近日&#xff0c;美国航空公司的飞行员工会遭受了一次勒索软件攻击。这次攻击对于全球最大的独立飞行员工会——美国航空公司飞行员协会&#xff08;APA&#xff09;造成了一定影响。让我们一起来了解详情。 背景介绍 美国航空公司飞行员协会成立于1963年&…

项目实战之安装依赖npm install

文章目录 nvmdeasync包和node-gyp报错deasync包node-gyp报错 前言&#xff1a;有些人看着还活着其实已经凉了好一会儿了。 初拿到项目 初拿到项目肯定是先看配置 package.json的啦&#xff0c;看看都需要安装什么依赖&#xff0c;然后 npm install,OK结束 皆大欢喜。 ————…