Determine your app’s Elasticsearch version
Determine your app’s Elasticsearch version and easily access that version’s docs
February 2, 2018
•I often find myself searching for our Rails app’s Elasticsearch version. The exact Elasticsearch version is important as Elasticsearch’s API differs slightly from version to version.
If you can reach Elasticsearch’s API, run
curl --silent -XGET https://elasticsearch-domain.com:9200 | python -c "import sys, json; print json.load(sys.stdin)['version']['number']"
Replace elasticsearch-domain.com with our Elasticsearch instance’s domain.
Alternatively, if you’ve SSH access to any server in your Elasticsearch cluster, run
curl --silent -XGET http://localhost:9200 | python -c "import sys, json; print json.load(sys.stdin)['version']['number']"
Determine Elasticsearch gem in a Rails app using the elasticsearch-model gem
If your Rails app is using the elasticsearch-model gem, open a rails console
bundle exec rails production console
and run
version = Elasticsearch::Model.client.info["version"]["number"]
puts version
Determine Elasticsearch gem in a Rails app using the tire gem
If your Rails app is using the tire gem, open a rails console
bundle exec rails production console
and run
response = Tire::Configuration.client.get(Tire::Configuration.url)version = JSON.parse(response.body)
puts version
Access your Elasticsearch version’s API docs
Elasticsearch’s API differs from version to version. If you’re on MacOS, install the Dash app If very handy to quickly access documentation of any Elasticsearch version.