无法使用curator python API过滤和删除elasticsearch的旧索引

时间:2018-01-26 01:34:30

标签: python amazon-web-services elasticsearch elasticsearch-curator

我试图使用curator python API定期删除elasticsearch中的旧日志。 在我的代码输出中,似乎我无法过滤我想要的索引,这些索引让我困扰了好几天。 如果我做错了什么,任何人都可以帮忙看看? 我使用了elasticsearch-curator版本5.4.1并在EC2上测试了elasticsearch 5.5,aws elasticsearch 5.5和aws elasticsearch 6.0,结果是一样的。

以下是我的代码:

from elasticsearch import Elasticsearch
import elasticsearch
import curator

def handler():
  client = elasticsearch.Elasticsearch(['http://XX.153.17.133:9200'])
  ilo = curator.IndexList(client)
  print ilo.all_indices
  print ilo.filter_by_regex(kind='prefix', value='mov')
  print ilo.filter_by_age(source='creation_date', direction='older', unit='seconds', unit_count=2)
  #delete_indices = curator.DeleteIndices(ilo)
  #delete_indices.do_action()
  return

handler()

以下是输出:

/Users/junyu/PycharmProjects/es-curator/bin/python 
/Users/junyu/PycharmProjects/es-curator/es-curator.py
[u'movie']
None
None

Process finished with exit code 0

提前谢谢!

1 个答案:

答案 0 :(得分:0)

如果您已设置日志记录,则只会看到print ilo.filter*行的输出。

如果您想查看过滤器后剩余的索引,请尝试print ilo.indices,因为这是工作清单。