2015-09-10 5 views
5

से वर्तमान मीट्रिक मान प्राप्त मान लीजिए मैं a.b.c.count नाम के एक मीट्रिक है। मैं एक अजगर स्क्रिप्ट जो ग्रेफाइट में मीट्रिक a.b.c.count के नवीनतम मूल्य पढ़ता लिखने की कोशिश कर रहा हूँ।ग्रेफाइट

मैं डॉक्स के माध्यम से चला गया और पता लगा कि हम कर्ल कार्यों http://graphite.readthedocs.org/en/0.9.13-pre1/functions.html का उपयोग कर ग्रेफाइट से मैट्रिक्स पुनः प्राप्त करने के लिए उपयोग कर सकते हैं।

लेकिन फिर भी यह पता लगाने की कैसे एक ही प्राप्त करने के लिए करने में असमर्थ।

उत्तर

4

मैं एक ही मूल्य के लिए ग्रेफाइट पूछने के लिए एक तरह से नहीं देखा है, लेकिन आप एक विन्यास अवधि में मूल्यों का एक सारांश के लिए कह सकता है और पिछले एक ले। (यह सिर्फ डेटा नहीं दिया कम करने के लिए है, तो आप के रूप में आसानी एक दी गई समयावधि में किसी भी श्रृंखला से अंतिम मान बाहर खींच सकता है।) उदाहरण प्रस्तुत करना पैरामीटर:

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]]}] 

यहाँ, निकालते हैं और इस पार्स करने के लिए एक अजगर का टुकड़ा है का उपयोग कर 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] 
संबंधित मुद्दे