ELASTIC制图等高级使用
Posted kerwinC
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ELASTIC制图等高级使用相关的知识,希望对你有一定的参考价值。
基于上一个安装部署的文档后(ELASTIC 5.2部署并收集nginx日志)
http://www.cnblogs.com/kerwinC/p/6387073.html
本次带来一些使用的分享。
kibana基于geoip数据库绘制地图。
postman插件定制mapping并根据mapping新建索引。
假设你已经像我上个博客一样收集好了日志信息。当你开心的向领导邀功时,领导又来需求了。
“日志收集的很棒,但我想要更直观的展示,给我基于数据画一些图,做一些报表吧!”
没问题!接下来我们一起使用kibana绘制一些数据图!
打开kibana,选择可视化,里面有一些饼图和条形图,你可以很轻易地把一些数据做成饼图条形图,比如HTTP200,404的占比等等,但我们这里做一个高端点的,用户访问地理分布图。
选择其中的一个map图
点开map图后会选择一些索引,我们选择了其中一个logstash-cdnlogs索引
接下来点这里
出现了地区字段后,点击播放按钮
我的报表就像开头的第一个图片一样,完美的展示出来了,但!你却不行,你的报错是这样
你的索引中没有geo_point的数据类型。
没关系,我只是之前偷偷改过数据类型了,现在带着你一起改一下数据类型。
首先在google浏览器上安装postman插件
可能需要你翻一下墙,在google上搜索postman,它就会弹出让你安装的页面了。
启动postman,输入你的ES地址,发送一个GET请求
YOU KNOW! FOR SEARCH!
在之前输入ES地址的地方输入一个新的请求
http://yourelastic.com:9200/cdnlogs-2017.02/_mappings
下面的窗口会给出你当前已存在的这个索引的mapping结构,此结构是logstash入库时给你默认生成的索引,并不含有geo_point数据类型,所以你的geoip.location字段(不知道这个字段怎么生成的请看上一个博客)即使是经纬度坐标,但kibana也不识别,只是认为是一个数字的数据类型罢了。
复制好mapping,到一个新窗口中粘贴进去,删掉mapping第二行中上一个索引的名字的一行,简称删掉第二行,然后在删掉最后一个括号,保证括号依旧是成对的,放入此URL。
http://yourelastic.com:9200/newlogs
选好图片中这几个箭头所指定的,点击send
一个定制mapping的新的索引就建立出来了。
修改logstash,将新的数据传入到此索引中,修改kibana,重复刚开始创建地图的步骤,你的图形就会出来了!
QQ: 2169866431
谢土豪
如果有帮到你的话,请赞赏我吧!
以上是关于ELASTIC制图等高级使用的主要内容,如果未能解决你的问题,请参考以下文章
Elastic:在腾讯云上部署 Elasticsearch 集群
Yii2 Nginx Elastic Beanstalk 上的高级模板
安装独立的 Elastic Agents 并采集数据 - Elastic Stack 8.0