CouchDB,Elastic Search和River Plugin无法正常运行

Sco*_*erg 6 couchdb elasticsearch

我正在努力让ElasticSearch工作,特别是使用River Plugin.出于某种原因,我无法让它发挥作用.我已经包含了我正在尝试使用的程序,在此处找到:

curl -XDELETE 'http://localhost:9200/_all/'
Run Code Online (Sandbox Code Playgroud)

响应:

{
  "ok": true,
  "acknowledged": true
}
Run Code Online (Sandbox Code Playgroud)

这是我知道我正在使用一组空的elasticsearch实例.

我有一个名为test的现有数据库,并且已经安装了河流插件.无论如何都要测试确认River Plugin已安装并正在运行?

我发出以下命令:

curl -XPUT 'http://localhost:9200/_river/my_index/_meta' -d '{
    "type" : "couchdb",
    "couchdb" : {
        "host" : "localhost",
        "port" : 5984,
        "db" : "my_couch_db",
        "filter" : null
    }
}'
Run Code Online (Sandbox Code Playgroud)

my_couch_db是一个真正的数据库,我在Futon中看到它.里面有一份文件.

响应:

{
  "ok": true,
  "_index": "_river",
  "_type": "my_index",
  "_id": "_meta",
  "_version": 1
}
Run Code Online (Sandbox Code Playgroud)

现在在这一点上,我的理解是弹性应该像我在教程中看到的那样工作.

我试着查询,只是为了找到任何东西.我去

 http://localhost:9200/my_couch_db/my_couch_db.
Run Code Online (Sandbox Code Playgroud)

响应:

No handler found for uri [/my_couch_db/my_couch_db] and method [GET]
Run Code Online (Sandbox Code Playgroud)

我去的时候有点奇怪

localhost:5984/my_couch_db/__changes 
Run Code Online (Sandbox Code Playgroud)

我明白了

{
  "error": "not_found",
  "reason": "missing"
}
Run Code Online (Sandbox Code Playgroud)

任何人都知道我搞砸了哪一部分?

jos*_*ngs 4

我尝试查询,只是为了找到任何东西。我去

http://localhost:9200/my_couch_db/my_couch_db.

尝试在curl -XGET 末尾添加/_search(带有可选),如下所示:?pretty=true

C:\>curl -XGET "http://localhost:9200/my_couch_db/my_couch_db/_search?pretty=true"
{
  "took": 0,
  "timed_out": false,
  "_shards": {
    "total": 10,
    "successful": 10,
    "failed": 0
  },
  "hits": {
    "total": 1,
    "max_score": 1.0,
    "hits": [
      {
        "_index": "my_couch_db",
        "_type": "my_couch_db",
        "_id": "a2b52647416f2fc27684dacf52001b7b",
        "_score": 1.0,
        "_source": {
          "_rev": "1-5e4efe372810958ed636d2385bf8a36d",
          "_id": "a2b52647416f2fc27684dacf52001b7b",
          "test": "hello"
        }
      }
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

奇怪的是当我转到 localhost:5984/my_couch_db/__changes 时

我明白了{"error":"not_found","reason":"missing"}

尝试从您的中删除一个下划线__changes,这应该像这样工作:

C:\>curl -XGET "http://localhost:5984/my_couch_db/_changes"
{
  "results": [
    {
      "seq": 1,
      "id": "a2b52647416f2fc27684dacf52001b7b",
      "changes": [
        {
          "rev": "1-5e4efe372810958ed636d2385bf8a36d"
        }
      ]
    }
  ],
  "last_seq": 1
}
Run Code Online (Sandbox Code Playgroud)