ElasticSearch: вернуть все элементы между двумя событиями - PullRequest
0 голосов
/ 19 декабря 2018

У меня много сообщений журнала в одном индексе ElasticSearch.Эти сообщения журнала содержат два специальных сообщения.Одно начальное сообщение и одно конечное сообщение (просто наличие поля со значениями «START» и «STOP»).

Могу ли я создать запрос в ElasticSearch, который возвращает все журналы в этом индексе между этими двумя сообщениями?

Спасибо за вашу помощь.

Обновление:

Вот пример, который показывает упрощенно, как выглядят мои данные:

PUT log
{
  "settings": {
    "index": {
      "number_of_shards": 1,
      "number_of_replicas": 0
    }
  },
  "mappings": {
    "_doc": {
      "properties": {
        "timestamp": {
          "type": "date",
          "format": "epoch_millis"
        },
        "msg": {
          "type": "text"
        }
      }
    }
  }
}

PUT log/_doc/1
{
    "timestamp": 1000,
    "msg" : "TO_EARLY"
}


PUT log/_doc/2
{
    "timestamp": 2000,
    "msg" : "START"
}

PUT log/_doc/3
{
    "timestamp": 3000,
    "msg" : "Hello, World!"
}

PUT log/_doc/4
{
    "timestamp": 4000,
    "msg" : "STOP"
}

PUT log/_doc/5
{
    "timestamp": 5000,
    "msg" : "TO_LATE"
}

Итак, мой вопрос: как выглядит запрос, чтобы получить сообщение между START и сообщением STOP?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...