Kibana5 数据探索使用(Discover功能)
认识Kibana
Kibana 是一个为 Logstash 和 ElasticSearch 提供的日志分析的 Web 接口。可使用它对日志进行高效的搜索、可视化、分析等各种操作。Kibana的使用场景主要集中在两方面:
- 实时监控。通过histogram面板,配合不同条件的多个queries可以对一个事件走很多个维度组合出不同的时间序列走势。时间序列数据是最常见的监控报警了。
- 问题分析。通过Kibana的交互式界面可以很快地将异常时间或者事件范围缩小到秒级或者个位数。期望一个完美的系统可以给你自动找到问题并且解决是不现实的,能够让你两三下就从TB级的数据里看到关键数据以便做出判断就很棒了。这时候,一些非histogram的其他面板还可能会体现出你意想不到的价值。全局状态下看似很普通的结果,可能在你锁定某个范围的时候发生剧烈的反方向的变化,这时候你就能从这个维度去重点排查。而表格面板则直观的显示出你最关心的字段,加上排序等功能。入库前字段切分好,对于排错分析真的至关重要。
使用Kibana
这里默认Kibana5已经安装部署完毕。预览图如下:

Kibana连接Elasticsearch
在开始使用Kibana之前,你需要告诉它打算探索哪个ElasticSearch索引。第一次访问的时候,你会被要求定义一个index pattern用来匹配一个或多个索引。
1、点击工具栏中的Management --> 选择index patterns --> 点击add new 按钮。默认情况下,Kibana认为你要访问的是通过Logstash导入ElasticSearch的数据。这时候你可以用默认的logstash-*作为你的index pattern。通配符(*)匹配索引名中零到多个字符。这里我写的index pattern为logs-bd-keyword*。
2、然后选择一个包含了时间戳的索引字段,可以用来做基于时间的处理。Kibana会读取索引的映射,然后列出所有包含了时间戳的字段(实际是字段类型为date的字段,而不是"看起来像时间戳的字段")。如果你的索引没有基于时间的数据,关闭Index contains time-based envents参数。
3、点击create之后,第一个被添加的pattern会自动被设置成默认值。如果有多个index pattern的时候,可以在Discover索引模式里选择一个进行探索数据。

探索数据(Discover功能)
- 设置时间过滤器
时间过滤器的作用是把搜索结果限制在一个特定的周期内。可以选择quick时间、relative相对时间、absolute绝对时间来进行过滤。也可以在直方图上设置时间过滤器:想要放大那个时间间隔,点击相应的柱体;单机并拖曳一个时间区域。注意需要等到光标变成加号,才意味着这是一个有效的起始点。可以用浏览器的后退键来回退你的操作。


- 搜索数据
在Discover页提交一个搜索,你就可以搜索匹配当前索引模式的索引数据了。支持Lucene query syntax,也可以用完整的基于JSON的Query DSL。显示结果的文档表格显示前500个匹配文档。最新的文档最先显示。你也可以保存(save)常用的搜索条件或使用(open)之前保存的搜索条件。new则是新建一个查询。下面是几个示例:
a) 简单的文本搜索,直接输入文本字符串。比如,如果你在搜索网站服务器日志,可以输入Safari来搜索各字段中的Safari单词。
b) 要搜索特定字段中的值,则在值前加上字段名。比如,你可以输入status:200来限制搜索结果都是在status字段里有200的内容。
c) 要搜索一个值的范围,你可以用范围查询语法。比如,要查找4xx的状态码,你可以输入status:[400 TO 499]。
d) 要指定更负责的搜索标准,可以用布尔操作符AND,OR,和NOT。比如要查找4xx的状态码,还是php和html结尾的数据,你可以输入status:[400 TO 499] AND (extension:php OR extension:html)。

- 按字段过滤
你可以过滤搜索结果,只显示在某字段中包含了特定值的文档。也可以创建反向过滤器,排除包含特定字段值的文档。比如存在字段字段为responsetime,现在对该字段进行过滤,可以选择字段并点击add:

如果想要移除,remove该字段即可:

下面再举一个添加过滤器的例子,每个字段下面默认会显示次数前5的值,比如添加字段localip的值为10.205.51.20的过滤器,只要点击+号的按钮即可,结果只显示包含该localip为10.205.51.20的文档;同样地反向过滤可以点击-号:

如果想要移除,点击删除符号即可

参考资料
《ELK stack权威指南》
https://www.elastic.co/guide/en/kibana/5.1/index.html
Kibana5 数据探索使用(Discover功能)的更多相关文章
- Kaggle:Home Credit Default Risk 数据探索及可视化(1)
最近博主在做个 kaggle 竞赛,有个 Kernel 的数据探索分析非常值得借鉴,博主也学习了一波操作,搬运过来借鉴,原链接如下: https://www.kaggle.com/willkoehrs ...
- 苏宁基于Spark Streaming的实时日志分析系统实践 Spark Streaming 在数据平台日志解析功能的应用
https://mp.weixin.qq.com/s/KPTM02-ICt72_7ZdRZIHBA 苏宁基于Spark Streaming的实时日志分析系统实践 原创: AI+落地实践 AI前线 20 ...
- discover功能--自动发现主机
discover功能,让监控的管理更加管理和自动化,现在来演示下如何使用discover功能自动发现主机 1.配置discover 2.在被侦测机上安装zabbix agent 安装完成后,修改配置( ...
- postgresql-分页重复数据探索
# postgresql-分页重复数据探索 ## 问题背景 许多开发和测试人员都可能遇到过列表的数据翻下一页的时候显示了上一页的数据,也就是翻页会有重复的数据. ### 如何处理? 这个问题出现的原因 ...
- python数据探索
数据质量分析 脏数据包括:缺失值:异常值:不一致的值:重复数据及含有特殊符号的数据: 1.缺失值处理 统计缺失率,缺失数 2.异常值处理 (1)简单统计量分析 (2)3Q原则 正态分布情况下,小概率事 ...
- 数据挖掘(二)用python实现数据探索:汇总统计和可视化
今天我们来讲一讲有关数据探索的问题.其实这个概念还蛮容易理解的,就是我们刚拿到数据之后对数据进行的一个探索的过程,旨在了解数据的属性与分布,发现数据一些明显的规律,这样的话一方面有助于我们进行数据预处 ...
- oracle sqlldr使用(导入速度快,但对数据本身的处理功能弱)
oracle sqlldr使用(导入速度快,但对数据本身的处理功能弱) 博客分类: DB.Oracle OracleSQL sqlload.cmd pause sqlldr user/pass@tn ...
- 利用python进行泰坦尼克生存预测——数据探索分析
最近一直断断续续的做这个泰坦尼克生存预测模型的练习,这个kaggle的竞赛题,网上有很多人都分享过,而且都很成熟,也有些写的非常详细,我主要是在牛人们的基础上,按照数据挖掘流程梳理思路,然后通过练习每 ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 添加查询功能
jQuery EasyUI 数据网格 - 添加查询功能 本实例演示如何从数据库得到数据,并将它们显示在数据网格(datagrid)中.然后演示如何根据用户输入的搜索关键词搜寻显示结果. 创建数据网格( ...
随机推荐
- hibernate操作步骤(代码部分)
1.加载hibernate的核心配置文件 2.创建SessionFactory对象 3.使用SessionFactory创建Session对象 4.开启事务(手动开启) 5.写具体逻辑crud,增删改 ...
- ASP.NET MVC5(三):表单和HTML辅助方法
表单的使用 Action和Method特性 Action特性用以告知浏览器信息发往何处,因此,Action特性后面需要包含一个Url地址.这里的Url地址可以是相对的,也可以是绝对的.如下Form标签 ...
- Eclipse导出JavaDoc中文乱码问题解决
在Eclipse里 export 选 JavaDoc,在向导的最后一页的Extra JavaDoc Options 里填上参数即可 比如项目采用的是UTF-8的编码就填:-encoding UTF-8 ...
- C# 计时器写法
刚才一个交流群里有人问计时器怎么写,正好我也不太熟,就写了个demo,和大家分享一下这个是参考师傅的写的! 计时器有好多种写法,这里给大家推荐一个性能比较好的,用dispatchertimer ...
- TortoiseGit保存密码
TortoiseGit保存密码 方法一:使用Bash命令 1.设置name和emailgit config --global user.name "yilei"git config ...
- UE4 difference between servertravel and openlevel(多人游戏的关卡切换)
多人游戏的关卡切换分为无缝和非无缝.非无缝切换时,客户端将跟服务器断开连接,然后重新连接到同一个服务器,服务器则加载一个新地图.无缝切换不会发生这样的情况. 有三个函数供我们使用:UEngine::B ...
- vue setTimeout用法 jquery滚动到某一个div的底部
//vue 中setTimeOut用法 var $this = this; setTimeout(function(){ $this.goEnd() }, 10); goEnd:function(){ ...
- hadoop伪分布式环境搭建
环境:Centos6.9+jdk+hadoop1.下载hadoop的tar包,这里以hadoop2.6.5版本为例,下载地址https://archive.apache.org/dist/hadoop ...
- kindeditor使用入门-张国红
kindeditor是在线编辑器,比较好用,以下是使用这个插件的步骤. 下载kindeditor-4.1.10.zip 解压 asp,asp.net,php对于jsp开发没有用,可以删除 新建web工 ...
- Unity 游戏框架搭建 (二) 单例的模板
上一篇文章中说到的manager of managers,其中每个manager都是单例的实现,当然也可以使用静态类实现,但是相比于静态类的实现,单例的实现更为通用,可以适用大多数情况. 如何设计 ...