我想使用AWS elasticsearch来存储我的应用程序的日志。由于有大量数据要输入到AWS elasticsearch(每天约30GB),所以我只保留3天的数据。有没有办法安排从AWS elasticsearch删除数据或进行日志轮换?如果AWS elasticsearch存储已满,会发生什么?
感谢您的帮助
答案 0 :(得分:0)
一种可能的方法是将elasticsearch
输出中的 index 参数指定为 logstash - %{appname} - %{date_format} " 即可。因此,您可以使用curator plugin以按天数删除旧索引。
这SO几乎解释了同样的问题。希望它有所帮助!
答案 1 :(得分:0)
我假设您使用的是AWS Amazon Elasticsearch Service?
存储类型是具有固定大小磁盘空间的EBS卷。如果你只想保留最后三天,我假设你有3个索引,就像那样
my-index-2017.01.30
my-index-2017.01.31
my-index-2017.02.01
基本上你可以编写一些简单的脚本来删除超过3天的索引。使用REST API,它只是在Sense DELETE my-index-2017.01.30
。
我建议使用Elasticsearch Curator完成这项工作。见https://www.elastic.co/guide/en/elasticsearch/client/curator/current/delete_indices.html
我不确定Service接口本身是否有选项。但是Elasticsearch策展人应该为你做好准备。
答案 2 :(得分:0)
2020年更新:
AWS ES现在支持索引状态管理,可让您定义自定义管理策略以自动执行常规任务,并将其应用于索引和索引模式。您不再需要设置和管理外部流程来运行索引操作。
例如,您可以定义一个策略,在30天后将索引移到只读状态,然后在90天后最终将其删除。
索引状态管理-https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/ism.html