Как искать подстроку в атрибуте строки json в Kibana (эластичный поиск)?

У меня есть атрибут, хранящийся в базе данных Elastic Search. Атрибут имеет примерно такую ​​форму: -

{
"a":{
  "key1":"value1",
  "key2":"value2"
    }
} 

Теперь я хочу найти все экземпляры, для которых определено значение1. Как добиться этого с помощью запроса Kibana?


person Animesh Gaitonde    schedule 01.02.2020    source источник


Ответы (1)


Ниже приведен запрос:


GET ${index}/_search
{
    "from": 0,
    "size": 200,
    "query": {
        "bool": {
            "filter": [
                {
                    "bool": {
                        "must": [
                            {
                                "match_phrase": {
                                    "a.key1": {
                                        "query": "value1",
                                        "slop": 0,
                                        "zero_terms_query": "NONE",
                                        "boost": 1
                                    }
                                }
                            }
                        ],
                        "adjust_pure_negative": true,
                        "boost": 1
                    }
                }
            ],
            "adjust_pure_negative": true,
            "boost": 1
        }
    }
}

Если вы хотите запросить все экземпляры, вам также необходимо знать количество документов. Если количество больше 10000, вам нужно использовать прокрутку.

person YouXiang-Wang    schedule 01.02.2020