An Elixir flavored HTTP client and DSL library for Elasticsearch
An Elixir flavored HTTP client and DSL library for building JSON based settings, mappings, queries to Elasticsearch engine.
defp deps dolist in your mix.exs file:
{:tirexs, "~> 0.8"}
:tirexsto the
:applicationslist in
def application.
tirexs:
# The default uri is http://127.0.0.1:9200 config :tirexs, :uri, "http://127.0.0.1:9200"
See lib/tirexs/env.ex for more configuration options. 4. Index a document:
import Tirexs.HTTPput("/my_index/users/1", [name: "Jane", email: "[email protected]"])
{:ok, 201,
%{_id: "1", _index: "my_index", _type: "users", _version: 1, created: true}}
get("/my_index/users/1") # {:ok, 200, # %{_id: "1", _index: "my_index", # _source: %{email: "[email protected]", name: "Jane"}, _type: "users", # _version: 1, found: true}}
get("/my_index/users/_search?q=name:jane") # {:ok, 200, # %{_shards: %{failed: 0, successful: 5, total: 5}, # hits: %{hits: [%{_id: "1", _index: "my_index", _score: 0.30685282, # _source: %{email: "[email protected]", name: "Jane"}, _type: "users"}], # max_score: 0.30685282, total: 1}, timed_out: false, took: 10}}
import Tirexs.Searchquery = search [index: "my_index"] do query do match "name", "jane" end end
[search: [query: [match: [name: [query: "jane"]]]], index: "my_index"]
Tirexs.Query.create_resource(query)
{:ok, 200,
%{_shards: %{failed: 0, successful: 5, total: 5},
hits: %{hits: [%{_id: "1", _index: "my_index", _score: 0.30685282,
_source: %{email: "[email protected]", name: "Jane"}, _type: "users"}],
max_score: 0.30685282, total: 1}, timed_out: false, took: 5}}
Check out /examples directory as a quick intro.
Find out more in api reference
Look around using https://hex.pm/packages?search=elasticsearch... to find out some other packages.
If you feel like porting or fixing something, please drop a pull request or issue tracker at GitHub! Check out the CONTRIBUTING.md for more details.
Tirexssource code is released under Apache 2 License. Check LICENSE and NOTICE files for more details. The project HEAD is https://github.com/zatvobor/tirexs.