如何批量重新索引多个弹性索引?

莱昂

例如,我有相当多的索引,名称如下:

logstash-oidmsgcn_2016.12.01
logstash-oidmsgcn_2016.12.02
logstash-oidmsgcn_2016.12.03
...
logstash-oidmsgcn_2017.02.21

需要索引到名称:

bk-logstash-oidmsgcn_2016.12.01
bk-logstash-oidmsgcn_2016.12.02
bk-logstash-oidmsgcn_2016.12.03
...
bk-logstash-oidmsgcn_2017.02.21

所以,我只需要批量给他们的名字一个前缀。我该怎么做才能完成这项工作?我已经引用了reindex apibulk api,但我仍然无法掌握它的窍门。

瓦尔

您只能通过重新索引所有索引来执行此操作。如果您愿意这样做,您可以使用reindex API这样做:

POST _reindex
{
  "source": {
    "index": "logstash-oidmsgcn_*"
  },
  "dest": {
    "index": "bk-logstash-oidmsgcn"
  },
  "script": {
    "inline": "ctx._index = 'bk-logstash-oidmsgcn_' + (ctx._index.substring('logstash-oidmsgcn_'.length(), ctx._index.length()))"
  }
}

请注意,您需要启用动态脚本才能使其正常工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章