2019-09-17 10:40:50 3076浏览
在有需求统计ES存储容量的时候,有不少的小伙伴是用PHP实现的,但是如果考虑到以后可能会经常写脚本查询的话,就需要用python写了一个脚本了,本篇文章扣丁学堂Python培训小编就为大家分享一篇Python 脚本获取ES 存储容量的实例,希望对大家有所帮助。

代码如下:
import urllib
import urllib2
import sys
es_service_addr = sys.argv[1]
url = "http://" + es_service_addr + "/_cat/indices?v";
req = urllib2.Request(url)
res_data = urllib2.urlopen(req)
res = res_data.read()
list = res.split('\n')
title = list[0].split()
length = len(list)
data = list[1:length]
map={}
for i in title:
map[i] = title.index(i)
capacity_used = 0;
for i in data:
value = i.split()
l = len(value)
if l > 0 :
store_size = value[map['store.size']].lower()
if "k" in store_size:
capacity_used += int(store_size[:-1]) * 1024
elif "m" in store_size:
capacity_used += int(store_size[:-1]) * 1024 * 1024
elif "g" in store_size:
capacity_used += int(store_size[:-1]) * 1024 * 1024 * 1024
elif "p" in store_size:
capacity_used += int(store_size[:-1]) * 1024 * 1024 * 1024 * 1024
elif "p" in store_size:
capacity_used += int(store_size[:-1]) * 1024 * 1024 * 1024 * 1024 * 1024
else:
capacity_used += int(store_size[:-1])
print str(capacity_used) + " Bytes"
背景:

通过ES 查询的结果如图所示,脚本实现的作用就是统计store.size 的值。
最后想要了解更多关于Python和人工智能方面内容的小伙伴,请关注扣丁学堂Python培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的Python开发环境搭建视频,Python培训后的前景无限,行业薪资和未来的发展会越来越好的,扣丁学堂老师精心推出的Python视频教程定能让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python技术交流群:279521237。
【关注微信公众号获取更多学习资料】 【扫码进入Python全栈开发免费公开课】