Como limpar um índice de pesquisa elástica em Ruby

A única coisa que você precisa é executar o seguinte script em seu console ruby

require "json"
keys
= JSON.parse(`curl http://localhost:9200/_mapping`).keys
keys
.each {|key| `curl -XDELETE http://localhost:9200/#{key}`}

Vamos ver em detalhes como funciona o script ruby ​​acima. Basicamente, o script tira proveito da elasticsearch.

Esta linha busca todo o “mapeamento” do elasticsearch usando o enpoint “/ _mapping” e os salva no arquivo mapping.json

curl http://localhost:9200/_mapping

Então o script analisa os resultados buscados e salvos em keysvariável e nós iteramos sobre os nomes dos índices pais e começamos a chamar o endpoint para excluí-los

keys.each {|key| `curl -XDELETE http://localhost:9200/#{key}`}