在Python中将.rrd文件转换为json
有没有什么Python模块可以把.rrd文件转换成json格式的?
2 个回答
-1
这个功能不会有内置的库模块。
2
下面是我尝试用来从rrd文件生成json的代码。
#!/usr/bin/python
import rrdtool
import sys
def printMetric():
args = ["/var/lib/ganglia/rrds/__SummaryInfo__/cpu_system.rrd", "AVERAGE"]
rrdMetric = rrdtool.fetch(args)
time = rrdMetric[0][0]
step = rrdMetric[0][2]
sys.stdout.write(" {\n \"Key1\":\"" + rrdMetric[1][0] +\
"\",\n \"Key2\":\"" + "abcd" +\
"\",\n \"metric_name\":\"" + "cpu_system" + "\",\n")
firstDP = True
sys.stdout.write(" \"datapoints\":[\n")
for tuple in rrdMetric[2]:
if tuple[0] is not None:
if not firstDP:
sys.stdout.write(",\n")
firstDP = False
sys.stdout.write(" [")
sys.stdout.write(str(tuple[0]))
sys.stdout.write(",")
sys.stdout.write(str(time))
sys.stdout.write("]")
time = time + step
sys.stdout.write("\n ]\n }")
printMetric()