最近系统因为几处连锁的bug造成数据的缺失,有个几百万条有效数据吧。 这边基于metric的报警还完善,自己写得关于量级判断还没上线,SO,在这样监控不给力的情况下,就需要产品经理自己去统计下。

文章写的不是很严谨,欢迎来喷,另外该文后续有更新的,请到原文地址查看更新.

http://xiaorui.cc/2015/06/09/%E9%80%9A%E8%BF%87elasticsearch%E8%87%AA%E5%8A%A8%E5%8C%96%E5%88%9B%E5%BB%BAkibana%E7%9A%84visualize%E5%9B%BE%E8%A1%A8%E5%8F%8Adashboard/


      这边的对于数据日志的统计基本统一在了elk上了。  产品经理需要定期的登入到kibana上,想看相关的处理量级。  业务本身有任务的优先级,对于优先级高的网站,我们需要统一的统计,重点的网站不少,差不多有20多个。 我们对于监控的维度主要关注两个条件,一个是成功,一个是失败,所以需要在一个图上画出成功和失败的线条。 

刚介绍了我这次的任务,就是配合PM做出一个业务的dashboard来,因为20个,确实有些多。  所以就想到了用批量脚本的方式添加。 但是没有搜到相关的文章,貌似kibana也没有什么现成的api可以用,难道大家都不关心批量添加图表的功能么?   我们每次调整kibana数据后,都会做保存处理,但是kibana的配置会存在哪里?   客户端? 但是他又怎么把这配置共享给别人呢 。  kibana4的服务端? kibana就是一堆的angular js组成的接口调度。  最后在es里面看到了kibana的配置,他的index名字是.kibana



那么我们用postman来测试下,http://192.168.1.103:9000/.kibana/visualization/太平洋汽车 ,请求Method用get 。  返回的信息里面含有关于百度知道的条件.

下面是完整的返回的集合,信息涵盖了我们手动操作的配置,比如X轴的时间timestamp,Y轴的数据,然后针对Y轴的数据,还做了filters过滤。 

怎么写入kibana的配置,可以用python,curl,或者是postman这样的调试工具。 

http://192.168.1.103:9000/.kibana/visualization/太平洋汽车   ,请求用 POST模式

                                                         (_index)       (type)                    (id)

用postman适合做Elasticsearch的调试,如果真的要实现批量添加,还是需要你自己用python来操作 。 

需要注意的是,POST的时候你的结构体需要是Json,注意下格式就好了。 http://jsonlint.com/  可以到这边格式化你的格式。 

上面是怎么自动化添加图表,那怎么把图表加到dashboard里面。 方法也简单,用python的es模块获取数据,然后json.loads  panelsJSON,接着追加你要加入该dashboard的visualize图表。 

最后,用python写成一个脚本实现了kibana批量的添加。  下面是添加后的效果图。



写博客之前,我在kibana github提了个问题,就是关于kibana,这哥们给我答复了,居然跟我的方法是一样的….    不太明白为毛不开放个批量的接口 。




关于kibana批量添加的文章,出处 http://xiaorui.cc/?p=1570

希望kibana 赶紧出个管理api, 这样就不用蛋疼的直接改es了.

END.   



对Python及运维开发感兴趣的朋友可以加QQ群 : 478476595 !!!
{ 2000人qq大群内有各厂大牛,常组织线上分享及沙龙,对高性能及分布式场景感兴趣同学欢迎加入该QQ群 }

另外如果大家觉得文章对你有些作用!   帮忙点击广告. 一来能刺激我写博客的欲望,二来好维护云主机的费用.
如果想赏钱,可以用微信扫描下面的二维码. 另外再次标注博客原地址  xiaorui.cc  ……   感谢!
暂无相关产品