Kibana初步使用之Timelion

1、原由

公司目前将日志类的接入ELK(Elasticsearch、Logstash、Kibana的简称)日志分析系统,见识到Kibana提供的可视化界面,由衷感受很厉害,心神向往。因此实现可视化的任务就理所应当的落在本人“全干工程师”的身上了!数组

话很少说,开搞!bash

2、为何选择Timelion

在初步尝试使用系统默认的饼图、条形图、折线图以后感受不能达到目标,默认的图形展现的数据较为单一(不排除本人的能力有限,不能很好的发挥他们的展现力)elasticsearch

在图表选择页看到了Timelion,详细了解了下,这个就是属于自定义的,能够任由本人进行发挥,因此就决定是你了!ide

3、Timelion表达式函数介绍

1.数据源设定类:
.elasticsearch() 从ES读取数据
 .es() elasticsearch的简写
 --------分隔线,上面的是使用的,下面的这些是只知道存在,并无使用过-------
 .graphite(metric="path.to.*.data", offset="-1d"): 从 graphite 读取数据
 .quandl(): 从 quandl.com 读取 quandl 码
 .worldbank_indicators(): 从 worldbank.org 读取国家数据
 .wbi(): .worldbank_indicators() 的简写
 .worldbank(): 从 worldbank.org 读取数据
 .wb(): .worldbanck() 的简写
复制代码
2.数据运算类:
(此次也没怎么用到,仅列出来展现用)
.abs(): 对整个数组元素求绝对值
.precision($number): 浮点数精度
.testcast($count, $alpha, $beta, $gamma): holt-winters 预测
.cusum($base): 数组元素之和,再加上 $base
.derivative(): 对数组求导数
.divide($divisor): 数组元素除法
.multiply($multiplier): 数组元素乘法
.subtract($term): 数组元素减法
.sum($term): 数组元素加法
.add(): 同 .sum()
.plus(): 同 .sum()
.first(): 返回第一个元素
.movingaverage($window): 用指定的窗口大小计算移动平均值
.mvavg(): .movingaverage() 的简写
.movingstd($window): 用指定的窗口大小计算移动标准差
.mvstd(): .movingstd() 的简写
复制代码
3.可视化效果类:
(这里面的都试了试,挺好玩的)
.bars($width): 用柱状图展现数组
.lines($width, $fill, $show, $steps): 用折线图展现数组
.points(): 用散点图展现数组
.color("#c6c6c6"): 改变颜色
.hide(): 隐藏该数组
.label("change from %s"): 标签
.legend($position, $column): 图例位置
.yaxis($yaxis_number, $min, $max, $position): 设置 Y 轴属性,.yaxis(2) 表示第二根 Y 轴
复制代码
4.'.es()'用到的条件:
index : 指明查询的索引,例:log-*
q:指明查询条件,使用的是Lucene语法
metric:聚合条件y轴显示内容,默认是个数,使用方法:metric=sum:time(time字段的总和),可有多个metric
split:按某字段分组,使用方法:split=time:4(按time划分,取数量前四的进行展现),可有多个split
offset:x轴的偏移值,划重点!将不一样时间的数据进行对比须要用到offset=-1h,获取1h前的数据进行对比
timefield:指定时间轴采用的字段,默认@timestamp
复制代码

4、使用坎坷记录

1.如何使用q查询过滤数据?

多是这个内容属于比较简单的知识点,因此在查找资料的时候不多提到,大部分都是使用等于进行筛选的。 q=time:>1000 和 q=time:[1000 TO *] ,表示time大于1000的数据,*表示无穷函数

2.只有数字类型的数据能够进行范围过滤

在使用过程当中发现当筛选数据项为字符串格式的状况,会出现55>1000,由于采用的是字符串进行比较的方法。以后咱们就把数据源改成数字的类型,处理掉这个问题。听说可使用正则的方式进行筛选,这个没有实践,就暂时不提。ui

3.metric的写法

metric=sum:time(time字段的总和)spa

5、总结

初步使用Kibana,从网上的资料来看仍是不多,但愿这么优秀的东西能够获得更多人的使用与支持,同时也有更多小伙伴能够一块儿进行探讨和研究。日志

最后上成果一张。 code

相关文章
相关标签/搜索