Вам необходимо определить свои authentication_type
и event_type
в качестве ключевого слова, а затем использовать фильтры терминов для этих полей в поисковом запросе.
Вы можете прочитать с помощью примера фильтра с несколькими терминами в этой официальной ссылке ES .
Ниже приведен пошаговый пример, который использует ваши данные для отображения ожидаемых результатов поиска.
Отображение индекса
{
"mappings": {
"properties": {
"authentication_type": {
"type": "keyword"
},
"event_type" :{
"type" : "keyword"
}
}
}
}
Примеры документов индекса
{
"authentication_type" : "Client",
"event_type" : "authentication_succeeded"
}
{
"authentication_type" : "Client",
"event_type" : "authentication_failed"
}
{
"authentication_type" : "Admin",
"event_type" : "authentication_succeeded"
}
{
"authentication_type" : "Admin",
"event_type" : "authentication_failed"
}
Поисковый запрос
{
"query": {
"bool": {
"filter": [
{
"term": {
"event_type": "authentication_succeeded"
}
},
{
"term": {
"authentication_type": "Client"
}
}
]
}
}
}
Результат поиска
"hits": [
{
"_index": "so_60750542",
"_type": "_doc",
"_id": "1",
"_score": 0.0,
"_source": {
"authentication_type": "Client",
"event_type": "authentication_succeeded"
}
}
]