2015-09-10 160 views

回答

4

我還沒有看到一種方法來問一個單一的值的Graphite,但你可以要求在一個可配置的時間內的值的總結,並採取最後一個。 (這僅僅是爲了儘量減少返回的數據,可以作爲輕鬆地從任何系列拉出的最後一個值在給定的時間內)。例渲染參數:

target=summarize(a.b.c.count,'1hour','last')&from=-1h&format=json 

的JSON返回的將是這樣的:

[{"target": "summarize(a.b.c.count, \"1hour\", \"last\")", 
    "datapoints": [[5.1333330000000004, 1442160000], 
       [5.5499989999999997, 1442163600]]}] 

這裏是一個Python代碼段檢索和分析這一點,使用the 'requests' HTTP library

import requests 
r = requests.get("http://graphite.yourdomain.com/render/?" + 
       "target=summarize(a.b.c.count,'1hour','last')&from=-1h&format=json") 
print r.json()[0][u'datapoints'][-1][0]