设为首页 收藏本站
查看: 2035|回复: 0

[经验分享] 实战Kibana的日志关键词搜索和日志可视化

[复制链接]

尚未签到

发表于 2019-1-29 13:50:23 | 显示全部楼层 |阅读模式
  准备工作
  首先,先下载一个elastic网站上下载一个它提供的demo---莎翁的《亨利四世》,下载地址是https://download.elastic.co/demos/kibana/gettingstarted/shakespeare.json 。
  打开这个json字符串,里面就是《亨利四世》的话剧剧本,长得是这个样子:

  可以看到里面有“play_name”、"speaker"、"speech_number"、"line_id"等等名称,每个名称后面都有一个对应的值。
  然后启动elasticsearch,按照上面的文件格式生成索引。语句如下:
curl -XPUT http://localhost:9200/shakespeare -d '
{
"mappings" : {
  "_default_" : {
   "properties" : {
    "speaker" : {"type": "string", "index" : "not_analyzed" },    #确定type是字符
    "play_name" : {"type": "string", "index" : "not_analyzed" },
    "line_id" : { "type" : "integer" },    #确定type是数字
    "speech_number" : { "type" : "integer" }
   }
  }
}
}
';  导入刚刚下载的那个json:
curl -XPOST 'localhost:9200/shakespeare/_bulk?pretty' --data-binary @shakespeare.json  具体elasticsearch的增删改查语法可以参看阮大师的http://www.ruanyifeng.com/blog/2017/08/elasticsearch.html ,个人建议将elasticsearch和mysql对比一下,这样更方便理解。
然后后台启动kibana,确认5601端口已经stand by,如图:



然后在浏览器地址栏输入“服务器外网ip:5601”打开kibana。
  导入数据结束之后,使用#curl 'localhost:9200/_cat/indices?v',去查看一下效果,如果看到index里有shakespeare那一栏就是导入成功了,如图:

  在启动Kibana后,Kibana会自动在配置的es中创建一个名为.kibana的索引(上图第二个),这个索引用来存储数据,注意!不要删除了它。
  Kibana的界面搜索

  如果此时的kibana里是第一次配置的话,那么第一步就是配置新索引,我们之前在生成索引的时候写的是shakespeare,那么现在也写shakespeare,然后点击create,如图:
  
  
  

  然后在菜单栏左侧的discover里选择刚刚建立的“shakespeare”,就会看到这样的东西:


  在Search上就可以进行搜寻,比如说我搜寻"freedom",如图:

  如果我搜寻“KING HENRY IV ”,他不分大小写的把所有king、henry、iv都搜索出来。
  如果我想搜寻line_id的第一行到第三行,那么语句就是line_id:[1 TO 3],如图:

  如果想在上面的基础上进一步细化,比如说要在line_id是从第一行到第三行,同时_type是scene的语句:line_id:[1 TO 3] AND _type:scene


  假如不想要scene,那么就把AND改成NOT。
  如果这个时候只想关注一些指定的字段,那么可以将鼠标移动到索引下面的字段上,然后选在add即可,同样的移动上面已经选择的字段选择remove进行移除,比如我们试一下这个speaker:

  add之后在点击右侧的具体的speaker,就会看到里面的细节,比如这位westmoreland(威斯摩兰伯爵):

  这个时候就能看见这位伯爵大哥的台词细节,在第几场的第几节,说的是什么台词。再返回菜单左侧点击这个speaker,我们还会看到一个比重:


  从这里就很清晰的看到,FALSTAFF(法斯塔夫)这个哥们的台词最多,也符合书里塑造的那个嗜酒话痨的艺术形象。而我们的KING HENRY IV(亨利四世)的台词只是第四位,占比重11%而已...
  这样具体的搭配搜索之后,可以点击界面右上侧的save进行保存搜寻结果,再搭配share分享搜索结果的url网址,如图:

  Kibana的图像化展示
  Kibana也能做到类似grafana那样的炫酷图象化展示,更加立体的表现日志情况,首先选择左侧菜单栏里的“Visualize”(可视化):

  然后点击“Create a Visualization”,里面既有很多种图形供你选择,有饼型,有箭头的,有文字的,有仪表盘的,如图:

  我们这里先建立一个饼型的,还是上面那个台词多少的例子,首先选择"shakespeare"作为数据源,然后点击“split slices”,如图:

  然后在Aggergation里选择“Terms”,然后在Field里选择“Speaker”,size那里写8,最后点击上面的那个三角播放键,看看结果:

  这就很清晰的看出,亨利四世一共说了1086句话,占比11.11%。
  如果我们再加一个“Split Slices",这一次在原有的specker的基础上选择“play_name”,图象变成了一个同心圆,最外面的一层就是新增的“play_name”的情况,如图显示FALSTAFF的所有台词会在两个play_name里出现:

  如果这个盘子里不想统计FALSTAFF这个话包,就添加一个过滤器,选择speaker is not,后面写上FALSTAFF即可,如图:

  效仿刚才的方法也可以做一个仪表盘,如图:


  可视化的数据也可以save和share,同样在web界面的右上角。保存的数据是可以在左侧菜单栏里的Dashboard里展示,做成一个类似zabbix那样的展示!
最后的最后,如果您觉得本文对您升职加薪有帮助,那么请不吝赞助之手,刷一下下面的二维码,赞助本人继续写更多的博文!





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-669245-1-1.html 上篇帖子: Kibana 配置 下篇帖子: elk 报错
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表