繁体   English   中英

无法使用Python Elasticsearch客户端解析主机

[英]Can't resolve host using Python Elasticsearch client

我正在使用Python Elasticsearch客户端 当这样使用时:

from elasticsearch import Elasticsearch
es = Elasticsearch(['http://10.20.30.40:8888/'])
res = es.search(index='my_index', body=self.build_body())

都好! 我可以完美地拥有我的res

但是,我创建了一个别名并映射了我的elasticsearch端点:

http://10.20.30.40:8888 ---> http://foo.bar.com/search

通过浏览器访问或卷曲时都可以完美地工作。 但是我无法使用这个python客户端:

es = Elasticsearch(['http://foo.bar.com/search'])
res = es.search(index='my_index', body=self.build_body())

这提出了一个:

TransportError(404, u'index_not_found_exception', u'no such index')

同样的结果:

es = Elasticsearch([{'host':'http://foo.bar.com/search'}])

有没有人遇到过这样的问题?

更新:

无法使这个工作。 那么,对我有用的是:

u = urljoin(...)
r = requests.get(u, data=...)

我刚刚再遇到同样的问题。 事实证明,如果您没有指定端口,es将自动分配9200 所以,正确的形式是:

es = Elasticsearch(['http://foo.bar.com/search'], port=80)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM