Удаление старых индексов эластичного поиска с помощью NestJs - PullRequest
0 голосов
/ 14 февраля 2019

green open ab_namespacename_namespaceid_appName_appId-2019.02.13 5 1 540 0 1.2mb 617kb У меня есть много журналов в формате выше, я хочу удалить старые журналы (скажем, которые старше 5 дней) на @timestamp (в журнале выше (2019.02.13))спектр.Я сделал запрос на удаление журналов по запросу.

let query = { index: '*', headers: null, body: { query: { filter: { '@timestamp': { 'gte': 'now-5d', }, }, }, }, }; try { results = await this.elasticSearchClient.deleteByQuery(query); console.log('results', results); return results; } catch (e) { throw new LogHubException(e.message, HttpStatus.NOT_FOUND); Я получил следующую ошибку:

[parsing_exception] no [query] registered for [@timestamp], with { line=1 & col=42 }

ПРИМЕЧАНИЕ. Я использую NestJS для вызоваapiasticsearch, и используяasticsearch [6.4].Я не хочу использовать эластичный поиск-куратор.

1 Ответ

0 голосов
/ 14 февраля 2019

Ваш запрос должен выглядеть следующим образом:

{
  "query": {
    "range": {
      "@timestamp": {
        "gte": "now-5d"
      }
    }
  }
}

обновить соответствующие изменения в коде NestJS.

...