influxdb python: 404 页面未找到

influxdb python: 404 page not found

我正在尝试使用我发现 here 的 influxdb-python 库。但我什至无法让教程程序运行。

当我运行下面的示例代码:

$ python

>>> from influxdb import InfluxDBClient

>>> json_body = [
    {
        "measurement": "cpu_load_short",
        "tags": {
            "host": "server01",
            "region": "us-west"
        },
        "time": "2009-11-10T23:00:00Z",
        "fields": {
            "value": 0.64
        }
    }
]

>>> client = InfluxDBClient('localhost', 8086, 'root', 'root', 'example')

>>> client.create_database('example')

我在最后一行收到此错误消息:

>>> client.create_database('example')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/influxdb/client.py", line 318, in create_database
    status_code=201
  File "/usr/lib/python2.7/dist-packages/influxdb/client.py", line 124, in request
    raise InfluxDBClientError(response.content, response.status_code)
influxdb.client.InfluxDBClientError: 404: 404 page not found

我安装的版本:

pi@raspberrypi:~ $ influx
Visit https://enterprise.influxdata.com to register for updates, InfluxDB server management, and monitoring.
Connected to http://localhost:8086 version 0.9.6.1
InfluxDB shell 0.9.6.1

如果有人能指出我的问题,那就太好了。

更新

也许这有帮助。我和 Jessie 在 Raspberry Pi 3 上,并用这个教程安装了 influxdb link

更新 2

如果我 运行 curl http://localhost:8086 我也会得到 404 找不到页面。在端口 8083 上,我得到了响应。

我无法 post 发表评论,因为我没有名气。

我在 raspberry PI 和 v0.12.2 中发现了同样的问题。如果你去 https://docs.influxdata.com/influxdb/v0.12/guides/writing_data/ 有这个命令

curl -G http://localhost:8086/query --data-urlencode "q=CREATE DATABASE mydb"

它对我有用。

更新 1

我认为您没有正确安装 Python InfluxDB 驱动程序。按照 InfluxDB-Python 页面上的步骤操作。具体一定要运行以下命令为sudo。

pip 安装 influxdb

pip 安装 --upgrade influxdb

我在 Raspberry Pi2 上安装了 Influxdb 运行。

InfluxDB shell 0.12.1 是我的版本。您是 运行 0.9.6.1,它可能已过时,但仍然是您使用的存储库中可用的最新版本。

您的端口似乎正确,快速网络统计显示:

tcp6       0      0 :::8083                 :::*                    LISTEN      17740/influxd   
tcp6       0      0 :::8086                 :::*                    LISTEN      17740/influxd   
tcp6       0      0 :::8088                 :::*                    LISTEN      17740/influxd   

为了测试它,我使用了与您相同的示例脚本,但略有不同:

#!/usr/bin/python

import random
from datetime import datetime

from influxdb import InfluxDBClient


query = 'select value from wetter;'
client = InfluxDBClient(host='127.0.0.1', database='wetter')
print(client)

current_time = datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%SZ')
json_body = [
    {
        "measurement": "temperature",
        "tags": {
            "host": "192.168.0.82",
            "location": "room"
        },
        "time": current_time,
        "fields": {
            "value": random.random()
        }
    }
]
print(json_body)

client.write_points(json_body)

然后我用 while true; do ./influxdb-test.py; sleep 2; done 启动脚本,每 2 秒插入一个新条目。

> select * from temperature

1462865736000000000 192.168.0.82    room    0.116745414817
1462866059000000000 192.168.0.82    room    0.576278097718
1462866062000000000 192.168.0.82    room    0.731955354635
1462866065000000000 192.168.0.82    room    0.536106447983
1462866068000000000 192.168.0.82    room    0.965246396917
1462866070000000000 192.168.0.82    room    0.785592521739