Elasticsearch integration with asyncio.
Project description
aioes is a asyncio compatible library for working with ElasticSearch
Documentation
Read aioes documentation on Read The Docs: http://aioes.readthedocs.io/
Example
import asyncio from aioes import Elasticsearch @asyncio.coroutine def go(): es = Elasticsearch(['localhost:9200']) ret = yield from es.create(index="my-index", doc_type="test-type", id=42, body={"str": "data", "int": 1}) assert (ret == {'_id': '42', '_index': 'my-index', '_type': 'test-type', '_version': 1, 'ok': True}) answer = yield from es.get(index="my-index", doc_type="test-type", id=42) assert answer['_source'] == {'str': 'data', 'int': 1} loop = asyncio.get_event_loop() loop.run_until_complete(go())
Requirements
Tests
Make sure you have an instance of elastic-search running on port 9200 before executing the tests.
In order for all tests to work you need to add the following lines in the config/elasticsearch.yml configuration file:
Enable groovy scripts:
script.groovy.sandbox.enabled: true
Set a repository path:
path.repo: ["/tmp"]
The test suite uses py.test, simply run:
$ py.test
License
aioes is offered under the BSD license.
CHANGES
0.7.0 (2017-03-29)
Fix Elasticsearch 5.x compatibility issues: #48, #72, #112, #73, #123.
Add stored_fields to mget, search and explain methods (#123).
Add wait_for_no_relocating_shards parameter in health (#123).
Add filter, token_filter, char_filter params in analyze (#123).
Add force_merge method (renamed optimize) (#123).
Add ignore_idle_threads param in hot_threads #123.
Update project dependencies.
Convert tests to pytest.
0.6.1 (2016-09-08)
Accept bytes as payload #42
Convert Elasticsearch.close() into a coroutine.
0.6.0 (2016-09-08)
Add support for verify_ssl #43
0.5.0 (2016-07-16)
Allow scheme, username and password in connections #40
0.4.0 (2016-02-10)
Fix ES2+ compatibility in transport address regex #38
0.3.0 (2016-01-27)
Use aiohttp.ClientSession internally #36
0.2.0 (2015-10-08)
Make compatible with Elasticsearch 1.7
Support Python 3.5
Drop Python 3.3 support
Relicense under Apache 2
0.1.0 (2014-10-04)
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.