2017-05-22 5 views
-1

私はpythonとelasticsearchに新しいです。私はサンプルアプリケーションを実行しようとしています。しかし、私のelasticsearch接続は何らかのエラーを示しています。私はelasticsearchをインストールし、サーバーを起動しました。アプリケーションではpython elasticsearchクライアントエラー:get_alias中にタイムアウトしました

.get_aliasが呼び出され
ES_URL = ['thrift://127.0.0.1:9200'] 
connection = pyes.ES(ES_URL) 
index = connection.indices.get_alias('staging-asset') 

、それは

Client error: timed out 
Traceback (most recent call last): 
File "/Users/shahanahamza/.virtualenvs/cms/lib/python2.7/site- 
packages/pyes/connection.py", line 151, in _client_call 
return getattr(conn.client, attr)(*args, **kwargs) 
File "/Users/shahanahamza/.virtualenvs/cms/lib/python2.7/site- 
packages/pyes/pyesthrift/Rest.py", line 41, in execute 
return self.recv_execute() 
File "/Users/shahanahamza/.virtualenvs/cms/lib/python2.7/site- 
packages/pyes/pyesthrift/Rest.py", line 52, in recv_execute 
(fname, mtype, rseqid) = self._iprot.readMessageBegin() 
File "/Users/shahanahamza/.virtualenvs/cms/lib/python2.7/site- 
packages/thrift/protocol/TBinaryProtocol.py", line 126, in 
readMessageBegin 
sz = self.readI32() 
File "/Users/shahanahamza/.virtualenvs/cms/lib/python2.7/site- 
packages/thrift/protocol/TBinaryProtocol.py", line 206, in readI32 
buff = self.trans.readAll(4) 
File "/Users/shahanahamza/.virtualenvs/cms/lib/python2.7/site- 
packages/thrift/transport/TTransport.py", line 58, in readAll 
chunk = self.read(sz - have) 
File "/Users/shahanahamza/.virtualenvs/cms/lib/python2.7/site- 
packages/thrift/transport/TTransport.py", line 159, in read 
self.__rbuf = StringIO(self.__trans.read(max(sz, self.__rbuf_size))) 
File "/Users/shahanahamza/.virtualenvs/cms/lib/python2.7/site- 
packages/thrift/transport/TSocket.py", line 103, in read 
buff = self.handle.recv(sz) 
timeout: timed out 

が問題を把握するために私を助けてください示し、このようなコードがあります。前もって感謝します。 @omriによるコメントで述べたように

+1

タイムアウトのしきい値を上げようとしましたか? 'es = Elasticsearch(timeout = 30、max_retries = 10、retry_on_timeout = True)' –

+0

いいえ、どこで設定しますか?私は、アプリケーション内でElasticSearchIndexとpyesをインポートするだけを参照してください。 –

答えて

1

することは、あなたがhere

についての詳細を読むことができます

pyes.es.ES(server, timeout=30, bulk_size=500,max_retries=10) 

timeout-デフォルトのしきい値を大きくする必要がありますまた、これはタイムアウトのための他の理由が考えられます。これをチェックし、まだ起きているかどうかを確認してください。

マッピングを確認

+0

なぜここでは倹約を使用していますか?代わりにhttpを使用していますか? thriftが使用されている場合は、サーバーが稼働する他のポートがありますか?接続がポート上に確立されているかどうかを確認するにはどうすればよいですか? –

関連する問題