Уточнение строки поиска URL-адреса curl

У меня есть эта строка URL:

curl -XGET "http://es.host.com:9200/filebeat/_search?q=type:MEMORYUSE&size=100&pretty=true")

Это работает так, как я хочу, но теперь я хотел бы ограничить MEMORYUSE возвратом только одного хоста. Пример Я хотел бы использовать вышеуказанное жало, чтобы вернуть MEMORYUSE только для сервера darthvader. Прямо сейчас я получаю все серверы, и я хотел бы ограничиться только тем сервером, который мне нужен.

Заранее благодарим вас за любые рекомендации, которые вы можете предоставить.

Уэйн


person Wayne    schedule 17.08.2017    source источник


Ответы (1)


запрос query_string поддерживает синтаксис, подобный type:MEMORYUSE AND host:darthvader, однако, когда вы используете пробелы, вам может потребоваться кодировать их по URL-адресу, если вы поместите туда все.

Вы должны использовать тело запроса, чтобы поместить туда свой запрос, например

curl -X GET 'http://.../_search' -d '{ "query" : { "query_string" : { "query" : "type:MEMORYUSE" } } }'

Это также позволяет выполнять гораздо более мощные запросы. См. поиск тела запроса в документы

person alr    schedule 18.08.2017
comment
Спасибо, это был ключ, который я искал. - person Wayne; 18.08.2017