Construtor de queries Elasticsearch
Converta uma lista de condições campo/operador/valor numa query bool do Elasticsearch.
Construtor de queries Elasticsearch
Cole uma lista de condições e esta ferramenta monta um pedido de pesquisa completo no Elasticsearch: uma query bool com os branches must, should, must_not e filter, mais ordenação, paginação e uma agregação opcional. É útil para quem escreve queries manualmente no Kibana Dev Tools, num cliente REST ou na camada de pesquisa de uma aplicação e prefere descrever as condições a redigitar o scaffolding JSON cada vez.
Cada condição é uma linha no campo Condições: um branch opcional (must, should, must_not, filter), um nome de campo, um tipo de condição opcional (term para uma correspondência exata, match para pesquisa full-text, range para comparações, exists para verificar se um campo está presente) e um valor — separados por pontos e vírgulas. "filter price range 100..500" constrói uma cláusula range; "should title match wireless headphones" constrói uma correspondência full-text numa frase; "must email exists" verifica se o campo está preenchido. Deixe o tipo em branco e a opção Tipo de condição padrão preenche-o; deixe o branch em branco e a opção Branch padrão faz o mesmo, portanto uma lista rápida como "status active; category electronics" ainda produz uma query válida.
O painel de opções cobre o resto de um pedido de pesquisa real: Campo de ordenação e ordem adicionam uma cláusula sort, Tamanho da página e Offset controlam a paginação from/size, e Agregação ativa um bucket terms ou date_histogram num campo à sua escolha. Realçar correspondências adiciona um bloco highlight para qualquer condição match, e Versão da linguagem de query alterna track_total_hits, disponível apenas a partir do Elasticsearch 7 em diante.
Tudo corre no seu navegador — as condições que digita e a query que resulta nunca são enviadas para lado nenhum. Copie o resultado diretamente para o Kibana Dev Tools ou um corpo de pedido, descarregue como ficheiro .txt, ou envie a saída de volta para a entrada para continuar a refinar.