使用NestJs删除旧的Elasticsearch索引

时间:2019-02-14 09:30:23

标签: node.js elasticsearch nestjs

green open ab_namespacename_namespaceid_appName_appId-2019.02.13 5 1 540 0 1.2mb 617kb 我有许多上述格式的日志,我想按@timestamp(在上述日志(2019.02.13))范围内删除旧日志(假设是5天以上的旧日志)。我已进行查询以按查询删除日志。

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调用elasticsearch api,并使用elasticsearch [6.4]。我不想使用elasticsearch-curator。

1 个答案:

答案 0 :(得分:0)

您的查询应如下所示:

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

相应地更新NestJS代码中的更改。