首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用Python将自定义时间戳写入InfluxDB

使用Python将自定义时间戳写入InfluxDB
EN

Stack Overflow用户
提问于 2021-08-05 12:30:42
回答 1查看 300关注 0票数 0

我目前正在为Python中influx_client的一个基本函数而苦苦挣扎。我有一组时间序列数据,我想将它们添加到不同客户端上的influxdb中。我当前的代码看起来有点像这样:

代码语言:javascript
代码运行次数:0
运行
复制
client = InfluxDBClient(url=f"http://{ip}:{port_db}", token=token, org=org)    
write_api = client.write_api(write_options=ASYNCHRONOUS)

p = Point("title_meas").field("column_data", value_data)
write_api.write(bucket=bucket, org=org, record=p)

现在我有一个特定的时间戳为每个点,我想要使用的InfluxDB键/时间戳,但无论我尝试-它不断增加我的主机设备的系统时间(但由于我正在处理历史数据,我需要调整时间戳)。我如何实现我的自定义时间戳,或者是否有一种比使用Point方法逐行添加数据更简单的方法……也许是像熊猫数据帧那样的东西?感谢您的每一条建议。

EN

回答 1

Stack Overflow用户

发布于 2021-08-09 22:11:23

您可以通过line协议、Point对象、Pandas Dataframe或json Dictionary编写代码。所有这些都是可行的方法。

如果你关心的是吞吐量线路协议是最快的,但如果微小的速度差异并不重要,那就使用你想要的任何东西。我强烈推荐阅读this。您希望在流入数据点上修改的“标记”称为"_time“。

要将其添加到点,请执行以下操作:

代码语言:javascript
代码运行次数:0
运行
复制
p = Point("title_meas").field("column_data", value_data).time('2021-08-09T18:04:56.865943'))

或json字典协议:

代码语言:javascript
代码运行次数:0
运行
复制
p = {'measurement':'title_meas', 'time': '2021-08-09T18:04:56.865943',
 'tags':{'sometag': 'sometag'},
 'fields':{'column_data': value_data}
}

确保时间戳符合您的期望的最简单方法是使用ISO/格式的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68666657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档