将数据从一种测量复制到另一种时,如何插入当前时间?

时间:2019-04-17 21:56:06

标签: python influxdb influxdb-python

在将数据从一种测量复制到另一种测量时如何插入当前时间。它会正确复制所有数据以及要复制的测量的时间戳。

选择MIN(列)作为值INTO db2.retention_policy2.measurement2 FROM db1.retention_policy1.measurement1 GROUP BY列1,列2

我希望新度量(measurement2)中的Time列具有当前时间,而不是db1.retention_policy1.measurement1中的时间。那可能吗?谢谢。

有一种将查询转换为列表的可能方法:

list_current_data = list(current_data.get_points())

然后以这种方式更新时间:

for item in list_current_data:
    item['time'] = datetime.datetime.utcnow().strftime("%Y-%m-%dT%H:%M:%S.%f")[:-4]+"Z"

最后将来自更新列表的数据插入到度量中。有谁知道如何将列表中的数据插入到测量中?

1 个答案:

答案 0 :(得分:0)

可以通过以下方式将列表中的数据写入度量:

current_data = client.query("SELECT statement")
list_current_data = list(current_data.get_points())

for data_point in current_data.get_points():
    data_to_write = [{'measurement': 'measurement_name',
                    'fields': {'value1': data_point['value1'],
                               'value2': data_point['value2']}
                    }]
    client.write_points(data_to_write)

每次执行脚本时,这会将新数据附加到测量中。