Windows InfluxDB与AWS InfluxDB之间的交互

时间:2017-09-18 15:07:12

标签: python amazon-web-services influxdb influxdb-python

关于InfluxDB和Python与它的交互,我遇到了以下问题。

InfluxDB安装在Windows 7机器上,我也有InfluxDB,它安装在AWS ubuntu机器的docker容器中。我将InfluxDB端口从AWS机器转发到我的本地Windows机器。

然后,使用Python influxdb库我尝试以下列方式连接到InfluxDB-s:

client_aws = influxdb.InfluxDBClient('localhost', 8087, '', '', 'aws_db')
client_local = influxdb.InfluxDBClient('localhost', 8086, '', '', 'local_db')

然后,我只想将AWS机器上的数据写入我的本地机器:

query = 'select field_name from test_aws'
rs = client_aws.query(query, params={"epoch": "us"})
points = list(rs.get_points(measurement="test_aws"))
db_body = [ { "measurement": "test_local",
              "time": query_time,
              "fields": { field_name: points[0].get("field_name") } } ]
client_local.write_points(db_body)

之后我检查了我的本地InfluxDB并检测到没有测量“test_local”但执行了查询

select field_name from test_local

返回必要的数据。此外,我不能放弃测量test_local,因为本地InfluxDB不存在。

你能帮助我吗?我的数据存储在哪里?如何执行查询但没有测量?

1 个答案:

答案 0 :(得分:0)

可以执行查询,但不返回任何数据。

在尝试向其中插入数据之前,您需要确保目标数据库存在于localhost计算机上。

在尝试将数据插入client.create_database('local_db')之前添加对db_local的调用以确保数据库存在。