Kibana - 我可以在脚本字段上添加监视器吗?

Kibana - can I add a monitor on a scripted field?

在 Kibana (ElasticSearch v6.8) 中,我正在存储包含一个 date 字段和一个 LaunchTime 字段的文档,并且我有一个脚本字段 uptime 作为它们的区别(以秒为单位):

(doc['date'].value.millis - doc['LaunchTime'].value.millis) / 1000 / 60

我正在尝试在索引的这个字段的最大值上创建一个监视器(处于警报状态),但是字段 'Uptime' 没有出现在我可以做的字段列表中最大查询。它的类型是 number 并且在可视化中我可以做 max/min 等显示这个字段。

这是 Kibana 警报的限制 - 我不能使用脚本字段吗?或者有什么方法可以使用它吗?

恐怕这是 kibana 脚本字段的限制。参见 this post about the same subject referring to the scripted field official documentation。我相信 watcher 由 ES 本身处理,而脚本字段由 kibana 处理(它们可以用于发现和可视化,因为 kibana 也是 handlind)

但不要害怕!你已经有了用于计算的脚本,你可以将它添加到 logstash 中,以便在你索引它们时将字段添加到你的实际文档中,这将使你能够将它用于观察者并且可能会优化 运行 处的负载时间,因为 val 只计算一个,当你摄取它时。然后,您可以 运行 使用脚本通过查询进行更新,并在现有文档中添加该字段。

如果您不使用 logstash,您可以查看 ES 的摄取管道,但这是一个相当高级的主题,我不确定它是否在 5.x 中实现。