46

Elasticsearch-1.1.0 を使用してツイートのインデックスを作成しました。インデックス作成プロセスは問題ありません。その後、バージョンアップしました。現在、Elasticsearch-1.3.2 を使用していますが、ランダムに次のメッセージが表示されます。

Exception happened: Error raised when there was an exception while talking to ES.
ConnectionError(HTTPConnectionPool(host='127.0.0.1', port=8001): Read timed out. (read timeout=10)) caused by: ReadTimeoutError(HTTPConnectionPool(host='127.0.0.1', port=8001): Read timed out. (read timeout=10)).

ランダム性のスナップショット:

Happened --33s-- Happened --27s-- Happened --22s-- Happened --10s-- Happened --39s-- Happened --25s-- Happened --36s-- Happened --38s-- Happened --19s-- Happened --09s-- Happened --33s-- Happened --16s-- Happened 

--XXs-- = after XX seconds

誰かが問題を解決する方法を指摘できますかRead timed out?

どうもありがとうございました。

4

6 に答える 6

51

表示されているエラーは、使用しているクライアントに関連している可能性があるため、直接回答するのは困難です。ただし、解決策は次のいずれかになります。

1.タイムアウト パラメータを渡して ES クライアントを作成するときに、デフォルトのタイムアウトをグローバルに増やします。Python での例

es = Elasticsearch(timeout=30)

2. クライアントからの要求ごとにタイムアウトを設定します。以下の Elasticsearch Python ドキュメントから引用。

# only wait for 1 second, regardless of the client's default
es.cluster.health(wait_for_status='yellow', request_timeout=1)

上記により、クラスターに応答するための余分な時間が与えられます

于 2014-12-02T15:36:28.960 に答える
43

これを試して:

es = Elasticsearch(timeout=30, max_retries=10, retry_on_timeout=True)

を完全に回避することはできないかもしれませんがReadTimeoutError、それらを最小限に抑えます。

于 2016-02-09T21:04:22.543 に答える