Watcher编辑

Kibana 警报提供了一组内置操作和警报,这些操作和警报与 APM、指标、安全和正常运行时间等应用程序集成。您可以使用 Kibana 警报在不同的 Kibana 应用程序中检测复杂条件,并在满足这些条件时触发操作。有关更多信息,请参阅警报和操作

您可以使用 Watcher 监视数据中的更改或异常,并执行相应的操作。例如,您可能想要

  • 监控社交媒体,作为检测面向用户的自动化系统(如 ATM 或票务系统)故障的另一种方式。当某个地区的推文和帖子数量超过阈值时,通知服务技术人员。
  • 监控您的基础设施,跟踪磁盘使用情况。当任何服务器可能在未来几天内耗尽可用空间时,打开一个帮助台工单。
  • 跟踪网络活动以检测恶意活动,并主动更改防火墙配置以拒绝恶意用户。
  • 监控 Elasticsearch,并在节点离开集群或查询吞吐量超过预期范围时立即通知系统管理员。
  • 跟踪应用程序响应时间,如果页面加载时间超过 SLA 超过 5 分钟,则打开一个帮助台工单。如果超过 SLA 超过一小时,则呼叫值班管理员。

所有这些用例都具有一些共同的关键属性

  • 可以通过定期 Elasticsearch 查询识别相关数据或数据更改。
  • 可以根据条件检查查询结果。
  • 如果条件为真,则执行一个或多个操作,例如发送电子邮件、通过 webhook 将数据推送到第三方系统或存储查询结果。

Watcher 的工作原理编辑

警报功能提供用于创建、管理和测试“监视器”的 API。监视器描述单个警报,并且可以包含多个通知操作。

监视器由四个简单的构建块构成

计划
用于运行查询和检查条件的计划。
查询
作为条件输入运行的查询。监视器支持完整的 Elasticsearch 查询语言,包括聚合。
条件
确定是否执行操作的条件。您可以使用简单条件(始终为真),也可以使用脚本处理更复杂的场景。
操作
一个或多个操作,例如发送电子邮件、通过 webhook 将数据推送到第三方系统或索引查询结果。

所有监视器的完整历史记录都保存在 Elasticsearch 索引中。此历史记录会跟踪每次触发监视器的时间,并记录查询结果、条件是否满足以及执行的操作。