Java技术栈

www.javastack.cn

关注优质文章

作者:废物大师兄
来源:www.cnblogs.com/cjsblog/p/9476813.html

Kibana是一个开源的分析和可视化平台,设计用于和Elasticsearch一起工作。

你用Kibana来搜索,查看,并和存储在Elasticsearch索引中的数据进行交互。

你可以轻松地执行高级数据分析,并且以各种图标、表格和地图的形式可视化数据。

Kibana使得理解大量数据变得很容易。它简单的、基于浏览器的界面使你能够快速创建和共享动态仪表板,实时显示Elasticsearch查询的变化。

1. 安装Kibana


2. Kibana配置


参考:

https://www.elastic.co/guide/en/kibana/current/settings.html

3. 访问Kibana


Kibana是一个Web应用程序,你可以通过5601来访问它。

例如:localhost:5601 或者 http://YOURDOMAIN.com:5601

当访问Kibana时,默认情况下,Discover页面加载时选择了默认索引模式。时间过滤器设置为最近15分钟,搜索查询设置为match-all(*)

号外:Java 系列面试题和答案都整理好了,关注公众号Java技术栈,在后台回复:面试,可以获取阅读。

3.1. 检查Kibana状态

http://localhost:5601/status

或者 http://192.168.101.5:5601/api/status 返回JSON格式状态信息。

4. 用Elasticsearch连接到Kibana


在你开始用Kibana之前,你需要告诉Kibana你想探索哪个Elasticsearch索引。第一次访问Kibana是,系统会提示你定义一个索引模式以匹配一个或多个索引的名字。

(提示:默认情况下,Kibana连接允许在localhost上的Elasticsearch实例。为了连接到一个不同的Elasticsearch实例,修改kabana.yml中Elasticsearch的URL,然后重启Kibana。)

为了配置你想要用Kibana访问的Elasticsearch索引:

1、访问Kibana UI。例如,localhost:56011 或者 http://YOURDOMAIN.com:5601

2、指定一个索引模式来匹配一个或多个你的Elasticsearch索引。当你指定了你的索引模式以后,任何匹配到的索引都将被展示出来。画外音:*匹配0个或多个字符;指定索引默认是为了匹配索引,确切的说是匹配索引名字)

3、点击“Next Step”以选择你想要用来执行基于时间比较的包含timestamp字段的索引。如果你的索引没有基于时间的数据,那么选择“I don’t want to use the Time Filter”选项。

4、点击“Create index pattern”按钮来添加索引模式。第一个索引模式自动配置为默认的索引默认,以后当你有多个索引模式的时候,你就可以选择将哪一个设为默认。(提示:Management > Index Patterns)

现在,Kibana已经连接到你的Elasticsearch数据。Kibana展示了一个只读的字段列表,这些字段是匹配到的这个索引配置的字段。

5. Discover


你可以从Discover页面交互式的探索你的数据。你可以访问与所选择的索引默认匹配的每个索引中的每个文档。你可以提交查询请求,过滤搜索结构,并查看文档数据。

你也可以看到匹配查询请求的文档数量,以及字段值统计信息。如果你选择的索引模式配置了time字段,则文档随时间的分布将显示在页面顶部的直方图中。

5.1. 设置时间过滤

5.2. 搜索数据

你可以在搜索框中输入查询条件来查询当前索引模式匹配的索引。在查询的时候,你可以使用Kibana标准的查询语言(基于Lucene的查询语法)或者完全基于JSON的Elasticsearch查询语言DSL。Kibana查询语言可以使用自动完成和简化的查询语法作为实验特性,您可以在查询栏的“选项”菜单下进行选择。

当你提交一个查询请求时,直方图、文档表和字段列表都会更新,以反映搜索结果。命中(匹配到的文档)总数会显示在工具栏中。文档表格中显示了前500个命中。默认情况下,按时间倒序排列,首先显示最新的文档。你可以通过点击“Time”列来逆转排序顺序。

5.2.1. Lucene查询语法

Kibana查询语言基于Lucene查询语法。下面是一些提示,可能会帮到你:

  • 为了执行一个文本搜索,可以简单的输入一个文本字符串。例如,如果你想搜索web服务器的日志,你可以输入关键字"safari",这样你就可以搜索到所有有关"safari"的字段

  • 为了搜索一个特定字段的特定值,可以用字段的名称作为前缀。例如,你输入"status:200",将会找到所有status字段的值是200的文档

  • 为了搜索一个范围值,你可以用括号范围语法,[START_VALUE TO END_VALUE]。例如,为了找到状态码是4xx的文档,你可以输入status:[400 TO 499]

  • 为了指定更改复杂的查询条件,你可以用布尔操作符 AND , OR , 和 NOT。例如,为了找到状态码是4xx并且extension字段是php或者html的文档,你可以输入status:[400 TO 499] AND (extension:php OR extension:html)

img

5.2.2. Kibana查询语法增强

新的更简单的语法

如果你熟悉Kibana的旧Lucene查询语法,那么你应该对这种新的语法也不会陌生。基本原理保持不变,我们只是简单地改进了一些东西,使查询语言更易于使用。

response:200 将匹配response字段的值是200的文档

用引号引起来的一段字符串叫短语搜索。例如,message:"Quick brown fox" 将在message字段中搜索"quick brown fox"这个短语。如果没有引号,将会匹配到包含这些词的所有文档,而不管它们的顺序如何。这就意味着,会匹配到"Quick brown fox",而不会匹配"quick fox brown"。(画外音:引号引起来作为一个整体)

查询解析器将不再基于空格进行分割。多个搜索项必须由明确的布尔运算符分隔。注意,布尔运算符不区分大小写。

在Lucene中,response:200 extension:php 等价于 response:200 and extension:php。这将匹配response字段值匹配200并且extenion字段值匹配php的文档。

如果我们把中间换成or,那么response:200 or extension:php将匹配response字段匹配200 或者 extension字段匹配php的文档。

默认情况下,and 比 or 具有更高优先级。

response:200 and extension:php or extension:css 将匹配response是200并且extension是php,或者匹配extension是css而response任意

括号可以改变这种优先级

response:200 and (extension:php or extension:css) 将匹配response是200并且extension是php或者css的文档

还有一种简写的方式:

response:(200 or 404) 将匹配response字段是200或404的文档。字符值也可以是多个,比如:tags:(success and info and security)

还可以用not

not response:200 将匹配response不是200的文档

response:200 and not (extension:php or extension:css) 将匹配response是200并且extension不是php也不是css的文档

范围检索和Lucene有一点点不同

代替 byte:>1000,我们用byte > 1000

>, >=, <, <= 都是有效的操作符

response:* 将匹配所有存在response字段的文档

通配符查询也是可以的。machine.os:win* 将匹配machine.os字段以win开头的文档,像"windows 7"和"windows 10"这样的值都会被匹配到。

通配符也允许我们一次搜索多个字段,例如,假设我们有machine.os和machine.os.keyword两个字段,我们想要搜索这两个字段都有"windows 10",那么我们可以这样写"machine.os*:windows 10"

5.2.3. 刷新搜索结果

5.3. 按字段过滤

以上是控制列表显示哪些字段,还有一种方式是在查看文档数据的时候点那个像书一样的小图标

删除也是可以的

我们还可以编辑一个DSL查询语句,用于过滤筛选,例如:

5.4. 查看文档数据

5.5. 查看文档上下文

5.6. 查看字段数据统计

6. Visualize


Visualize使得你可以创建在你的Elasticsearch索引中的数据的可视化效果。然后,你可以构建dashboard来展示相关可视化。

Kibana可视化是基于Elasticsearch查询的。通过用一系列的Elasticsearch聚集来提取并处理你的数据,你可以创建图片来线上你需要了解的趋势、峰值和低点。

6.1. 创建一个可视化

为了创建一个可视化的视图:

第1步:点击左侧导航条中的“Visualize”按钮

第2步:点击“Create new visualization”按钮或者**加号(+)**按钮

第3步:选择一个可视化类型

第4步:指定一个搜索查询来检索可视化数据

第5步:在可视化的构建器中选择Y轴的聚合操作。例如,sum,average,count等等

第6步:设置X轴

例如:

更多请看这里:

https://www.elastic.co/guide/en/kibana/current/createvis.html

https://www.elastic.co/guide/en/kibana/current/xy-chart.html

https://www.elastic.co/guide/en/kibana/current/visualize.html

7. Dashboard


Kibana仪表板显示可视化和搜索的集合。

你可以安排、调整和编辑仪表板内容,然后保存仪表板以便共享它。

号外:Java 系列面试题和答案都整理好了,关注公众号Java技术栈,在后台回复:面试,可以获取阅读。

7.1. 构建一个Dashboard

第1步:在导航条上点击“Dashboard

第2步:点击“Create new dashboard”或者“加号(+)”按钮

第3步:点击“Add”按钮

第4步:为了添加一个可视化,从可视化列表中选择一个,或者点击“Add new visualization”按钮新创建一个

第5步:为了添加一个已保存的查询,点击“Saved Search”选项卡,然后从列表中选择一个

第6步:当你完成添加并且调整了dashboard的内容后,去顶部菜单栏,点击“Save”,然后输入一个名字。

默认情况下,Kibana仪表板使用浅色主题。要使用深色主题,单击“选项”并选择“使用深色主题”。要将dark主题设置为默认,请转到管理>Management > Advanced ,并将dashboard:defaultDarkTheme设置为On。

8. Monitoring


Elasticsearch控制台打印日志:

[2018-08-15T14:48:26,874][INFO ][o.e.c.m.MetaDataCreateIndexService] [Px524Ts] [.monitoring-kibana-6-2018.08.15] creating index, cause [auto(bulk api)], templates [.monitoring-kibana], shards [1]/[0], mappings [doc]

Kibana控制台打印日志:

log   [03:26:53.605] [info][license][xpack] Imported license information from Elasticsearch for the [monitoring] cluster: mode: basic | status: active

真是牛逼吧,一张图片胜过千万行日志!

关注Java技术栈看更多干货

戳原文,获取精选面试题!

你还在用命令看日志?快用 Kibana 吧,一张图片胜过千万行日志!相关推荐

  1. 你还在用命令看日志?用这款可视化工具简直太方便了!

    作者:废物大师兄 cnblogs.com/cjsblog/p/9476813.html Kibana是一个开源的分析和可视化平台,设计用于和Elasticsearch一起工作. 你用Kibana来搜索 ...

  2. Alpha多样性稀释曲线rarefraction curve还不会画吗?快看此文

    关于测试数据共享文件声明 百度云是一种非常方便的文件共享方式,但是有时会出现文件无法通过审核,导致大家访问失败?之前团队分享视频(百度管片最严,你懂的,上周六的纪录片将扩展名mkv修改为jpg才通过审 ...

  3. 宕机日志怎么看 thread detail_如何快速过滤出一次请求的所有日志?

    前言 在现网出现故障时,我们经常需要获取一次请求流程里的所有日志进行定位.如果请求只在一个线程里处理,则我们可以通过线程ID来过滤日志,但如果请求包含异步线程的处理,那么光靠线程ID就显得捉襟见肘了. ...

  4. 我只是还迷惘,我们只是不言伤的孩纸:伤感QQ空间日志

    我只是还迷惘,我们只是不言伤的孩纸:伤感QQ空间日志 - 我只是还迷惘,我们只是不言伤的孩纸:伤感QQ空间日志 喜欢春去秋来,花开花落的美丽. 喜欢偶尔假装,低落感伤的感觉. 喜欢芳香四溢,温暖入微的 ...

  5. 还在手动启动neo4j?快来使用bat批处理自动启动neo4j,之后也不用配置环境了(社区版)

    还在手动启动neo4j?快来使用bat批处理自动启动,之后不用配置环境了(社区版) 1 start_neo4j.bat 总共创建两个bat一个 开启 start,一个关闭 stop [1]在neo4j ...

  6. 硬盘mdr转换成gdp linux,Linux 命令学习神器!命令看不懂直接给你解释!

    原标题:Linux 命令学习神器!命令看不懂直接给你解释! 转自: 良许Linux 大家都知道,Linux 系统有非常多的命令,而且每个命令又有非常多的用法,想要全部记住所有命令的所有用法,恐怕是一件 ...

  7. linux查看所有磁盘信息fdisk,Linux下添加新硬盘,分区及挂载 挂载好新硬盘后输入fdisk -l命令看当前磁盘信息 可以看...

    挂载好新硬盘后输入fdisk -l命令看当前磁盘信息 可以看到除了当前的第一块硬盘外还有一块sdb的第二块硬盘,然后用fdisk /dev/sdb 进行分区 进入fdisk命令,输入h可以看到该命令的 ...

  8. 你还在担心开车看不到路标吗?我这这有个路标分类的来玩玩啊(有源码有数据集)

    你还在担心开车看不到路标吗? 别看美女看路标 我这有个路标检测分类的小项目日后成型后肯定可以帮你看清路标哦.(我知道开车不看美女就能看到路标,但我偏偏要放一个美女啊 嘿嘿

  9. 新浪首页改版,您还去新浪看新闻吗?

    新浪首页改版,您还去新浪看新闻吗? 新浪首页改版了,主要体现是"视频上升.博客下降"的思想,原有的首页第一屏中部的"博客"全部取消了,取而代之的是"视 ...

  10. sqlserver 事务日志 异常增长原因排查_小白入门学习打日志

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 记得之前写过一篇:<阿里巴巴 Java开发手册 ...

最新文章

  1. C语言 数据结构 链表的增删查改
  2. mint-ui修改样式的小技巧
  3. hdfs中Exception in createBlockOutputStream以及MapReduce中I/O error constructing remote block reader
  4. 第三届“信息论与编码”中大论坛诚邀您的参加
  5. 数据库学习--DDL(数据库定义语言)
  6. 超简单的Springboot中的日志管理配置
  7. 最近在写个人网站,忙碌中。。。
  8. [图:知识竞赛题库PPT制作] 为上海棒约翰餐饮管理有限公司定制的的知识竞赛题目及展示界面-PPT格式-双屏展示。
  9. 3D打印的四种应用场合
  10. python化学公式配平_Python趣用—配平化学方程式
  11. 共射级三极管放大电路与其饱和失真与截止失真的分析
  12. 计算机图形学-五角星的画法(转)
  13. ArcEngine实现要素类排序的四种方法
  14. kubectl config 命令
  15. elasticjob-配置手册
  16. 一步一步教你开发微信扫码联合登录
  17. python 傅里叶变换_理解快速傅里叶变换算法
  18. mmo游戏服务器性能指标,关于performance:厚积薄发MMORPG手游合理的性能参数
  19. 排列组合问题,01234 五个数能组成多少个互不相同的三位数,且数字不重复。
  20. Unity 网络编程入门

热门文章

  1. mysql中删除两条重复的数据,只保留一条
  2. Windows兼容性设置图文教程,Windows兼容模式怎么设置?
  3. 转:MySQL 的 my.cnf 文件(解决 5.7.18 下没有 my-default.cnf )
  4. Tensorflow 版本切换与 slim 问题
  5. www.xttblog.com尚硅谷Java视频教程_SpringBoot视频教程
  6. mysql 设置平均值小数位数_mysql小数位数设置
  7. 阿里架构大牛说:JVM从入门到入魔,就是这么简单
  8. 初学unity(简单场景制作)
  9. 证书错误 SSLCertVerificationError
  10. Cortex-A715的介绍