python向influxdb寫入數據

python版本:3.6 
influxdb版本:1.5.2 

使用python的influxdb庫插入數據

from influxdb import InfluxDBClient
class TestInflux(object):
    """
    Attributes:
    """

    def __init__(self):
        self.influx_client = InfluxDBClient('127.0.0.1', 4674, '', '', 'test')

    def post_dump_data(self, name_arr, content, left, status, total):
        """

        :param name:
        :param content:
        :param value:
        :return:
        """
        i = 0
        tags = {}
        for item in name_arr:
            if not content[i]:
                content[i] = 0
            tags[item] = str(content[i])
            i += 1

        fields = {}
        fields["left"] = float(left)
        fields["status"] = float(status)
        fields["total"] = float(total)
        json_body = [
            {
                "measurement": "test",
                "tags": tags,
                "fields": fields
            }
        ]
        self.influx_client.write_points(json_body)

    def dump(self):
        """
        保存數據到influx db
        :return:
        """
        name_arr = ["id", "name", "city", "traffic", "type"]

        content = [346,  "測試", "北京", "擁堵", "測試"]
        self.post_dump_data(name_arr, content, 3, 5, 399)


def run():
    """
    運行腳本
    :return:
    """
    obj = TestInflux()
    obj.dump()


if __name__ == '__main__':
    run()

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章