将腌制数据发送到石墨

时间:2017-05-30 14:29:56

标签: python pickle graphite

我处于这样一种情况:我生成了包含数千个指标的多个文本文件,并且我希望将它们作为pickled data发送到石墨而不是逐行循环以节省时间。我不熟悉python,所以如果有任何人有一个脚本应该如何这样做的例子。我对文本文件格式很灵活,我可以通过python和graphite生成它以满足所需的格式。 感谢帮助

1 个答案:

答案 0 :(得分: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)

请注意,对于泡菜http://graphite.readthedocs.io/en/latest/feeding-carbon.html#the-plaintext-protocol

,不要太大

如果你计算了你在泡菜中添加的指标的大小,你可以在泡菜达到一定尺寸时发送泡菜

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