2017-05-30 2 views
1

Ich bin in einer Situation, in der ich mehrere Textdateien mit Tausenden von Metriken erzeuge, und ich möchte sie als pickled data an Grafit senden, anstatt Zeile für Zeile zu durchlaufen. Ich bin nicht vertraut mit Python, also wenn jemand ein Beispiel dafür hat, wie das Skript aussehen soll. Ich bin flexibel mit dem Textdateiformat und ich kann es für das erforderliche Format von Python und Graphit erzeugen. Schätzen Sie die HilfeEingelegte Daten an Graphit senden

Antwort

1
from carbon_client import CarbonClient 

carbon = CarbonClient('localhost', 2004) 

pickle = [] 

# loop through lines and add the metrics to pickle 

pickle.append((name, (time, result))) 


carbon.send_pickle(pickle) 

Beachten Sie, dass http://graphite.readthedocs.io/en/latest/feeding-carbon.html#the-plaintext-protocol

zu groß mit der Gurke dont go Wenn Sie die Größe der Metriken zählen, die Sie in die Beize setzen, können Sie die Gurke senden, wenn es ein erreicht bestimmte Größe

limit = 10 * 1024 
      if size >= limit: 
       carbon.send_pickle(pickle) 
       size = 0 
       pickle = []