Skip to main content

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.org/

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 nose, to execute:

nosetests tests

License

aioes is offered under the BSD license.

CHANGES

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aioes-0.6.1.tar.gz (62.3 kB view hashes)

Uploaded Source

Built Distributions

aioes-0.6.1-py3.5.egg (70.5 kB view hashes)

Uploaded Source

aioes-0.6.1-py3-none-any.whl (30.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page