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,选择可视化,里面有一些饼图和条形图,你可以很轻易地把一些数据做成饼图条形图,比如HTTP200404的占比等等,但我们这里做一个高端点的,用户访问地理分布图。

 

 

 

 

选择其中的一个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 集群

高级 AWS Elastic Beanstalk 环境配置

Yii2 Nginx Elastic Beanstalk 上的高级模板

安装独立的 Elastic Agents 并采集数据 - Elastic Stack 8.0

安装独立的 Elastic Agents 并采集数据 - Elastic Stack 8.0

谷歌云与Elastic和MongoDB等开源公司合作 挑战亚马逊