0

过去几天我一直在研究 curator,我遇到了这种过滤器类型“年龄”。在官方文档中,它被写为基于名称的年龄过滤器,在索引或快照名称中查找时间字符串,并将其转换为纪元时间戳。这对我来说不是很清楚。

如果我提到

source: name

馆长指的是什么“名字”?它是否引用任何特定索引的名称,如果是,我如何提及该索引的名称?

如果有人建议我提供更多关于 curator 的文档,那将非常有帮助。提前谢谢^^

4

1 回答 1

1

source: name的,读取索引名称并查找匹配的时间/日期值timestring。例如,如果您有一个名为 的索引indexname-2019.06.01,您可能会构建一个像这样的过滤器:

- filtertype: age
  source: name
  timestring: ‘%Y.%m.%d’
  unit: days
  unit_count: 30
  direction: older

此过滤器(如果不遵循列表中的其他过滤器)将在 Elasticsearch 中查看所有索引的名称以查找Year.month.day模式,将其转换为纪元时间戳,并查看该日期是否30 days older大于当时的纪元时间戳策展人被处决。如果这是真的,该索引名称将保留在可操作列表中以执行与过滤器关联的任何操作。

现在,这本身就是一个危险的过滤器。它将匹配indexname-2019.06.012019.06.01-anything什至prefix-2019.06.01-suffix。Curator 中的过滤器被设计成一个链条。pattern要指定您希望 Curator 考虑哪些索引,在过滤器之前执行过滤器可能是明智之举age

- filtertype: pattern
  kind: prefix
  value: indexname
- filtertype: age
  source: name
  timestring: ‘%Y.%m.%d’
  unit: days
  unit_count: 30
  direction: older

现在,此过滤器列表将仅查找以时间字符串开头indexname 在此之后具有Year.month.day时间字符串的索引。Curator 中的过滤器始终是 AND 在一起的。

Curator 官方文档是所有 Curator 事物的最终真相来源。如果您有进一步的解释要求,我很乐意回答(完全披露:我是 Curator 的作者和维护者)。

于 2019-07-02T12:26:57.397 回答