elasticsearch - elasticsearch connectionTimeout 即使设置 timeout=100
问题描述
我的代码是不言自明的,因此不会提供其他详细信息
es = Elasticsearch(['http://localhost:9200'])
e1={
"first_name":"nitin",
"last_name":"panwar",
"age": 27,
"about": "Love to play cricket",
"interests": ['sports','music'],
"timeout":100,
#"request_timeout":100 gives same error
}
res = es.index(index="test", doc_type="employee", id=1, body=e1)
我已经阅读了大多数有关此错误的帖子,但是他们所谈论的只是增加对我不起作用的超时。
这是错误:
ConnectionTimeout: ConnectionTimeout caused by - ReadTimeoutError(HTTPConnectionPool(host='localhost', port=9200): Read timed out. (read timeout=10))
解决方案
您正在尝试在体内设置超时。您应该使用 timeout 参数初始化 elasticsearch 客户端,或者根据客户端库,可能有单个请求的请求参数。
取决于上下文的参数主体通常是实际的搜索查询或数据文档(您的情况)。在正文中给出超时将使elasticsearch 将其视为在您的情况下要作为文档索引的数据。