1.. _readme: 2 3 4Curator 5======= 6 7Have indices in Elasticsearch? This is the tool for you! 8 9Like a museum curator manages the exhibits and collections on display, 10Elasticsearch Curator helps you curate, or manage your indices. 11 12 13`Curator API Documentation`_ 14---------------------------- 15 16Curator ships with both an API and a wrapper script (which is actually defined 17as an entry point). The API allows you to write your own scripts to accomplish 18similar goals, or even new and different things with the `Curator API`_, and 19the `Elasticsearch Python API`_. 20 21.. _Curator API: http://curator.readthedocs.io/ 22 23.. _Curator API Documentation: `Curator API`_ 24 25.. _Elasticsearch Python API: http://elasticsearch-py.readthedocs.io/ 26 27 28`Curator CLI Documentation`_ 29---------------------------- 30 31The `Curator CLI Documentation`_ is now a part of the document repository at 32http://elastic.co/guide at http://www.elastic.co/guide/en/elasticsearch/client/curator/current/index.html 33 34.. _Curator CLI Documentation: http://www.elastic.co/guide/en/elasticsearch/client/curator/current/index.html 35 36`Getting Started`_ 37------------------ 38 39.. _Getting Started: https://www.elastic.co/guide/en/elasticsearch/client/curator/current/about.html 40 41See the `Installation guide <https://www.elastic.co/guide/en/elasticsearch/client/curator/current/installation.html>`_ 42and the `command-line usage guide <https://www.elastic.co/guide/en/elasticsearch/client/curator/current/command-line.html>`_ 43 44Running ``curator --help`` will also show usage information. 45 46Contributing 47------------ 48 49* fork the repo 50* make changes in your fork 51* add tests to cover your changes (if necessary) 52* run tests 53* sign the `CLA <http://elastic.co/contributor-agreement/>`_ 54* send a pull request! 55 56To run from source, use the ``run_curator.py`` script in the root directory of 57the project. 58 59Running Tests 60------------- 61 62To run the test suite just run ``python setup.py test`` 63 64When changing code, contributing new code or fixing a bug please make sure you 65include tests in your PR (or mark it as without tests so that someone else can 66pick it up to add the tests). When fixing a bug please make sure the test 67actually tests the bug - it should fail without the code changes and pass after 68they're applied (it can still be one commit of course). 69 70The tests will try to connect to your local elasticsearch instance and run 71integration tests against it. This will delete all the data stored there! You 72can use the env variable ``TEST_ES_SERVER`` to point to a different instance 73(for example, 'otherhost:9203'). 74 75 76Origins 77------- 78 79Curator was first called ``clearESindices.py`` [1] and was almost immediately 80renamed to ``logstash_index_cleaner.py`` [1]. After a time it was migrated 81under the [logstash](https://github.com/elastic/logstash) repository as 82``expire_logs``. Soon thereafter, Jordan Sissel was hired by Elasticsearch, as 83was the original author of this tool. It became Elasticsearch Curator after 84that and is now hosted at <https://github.com/elastic/curator> 85 86[1] <https://logstash.jira.com/browse/LOGSTASH-211> 87