创建和管理规则

编辑

创建和管理规则

编辑

堆栈管理 > 规则 UI 中,提供了警报的跨应用程序视图。不同的 Kibana 应用程序,例如 可观测性安全地图机器学习 可以提供自己的规则。规则 提供了一个中心位置来

Example rule listing in Rules

有关警报概念以及可用规则和连接器的类型的更多信息,请访问 警报

所需权限

编辑

根据您的警报功能权限授予对规则的访问权限。有关更多信息,请访问 安全

创建和编辑规则

编辑

某些规则必须在 Kibana 应用程序(例如 指标APM正常运行时间)的上下文中创建,但其他规则是通用的。可以在 规则 中通过单击 创建规则 按钮创建通用规则类型。这将启动一个浮层,引导您选择规则类型并配置其条件和操作。

创建规则后,您可以打开操作菜单 (…) 并选择 编辑规则 以重新打开浮层并更改规则属性。

您还可以使用适用于 Terraform 的 Elasticstack 提供程序 将规则作为资源进行管理。有关更多详细信息,请参阅 elasticstack_kibana_alerting_rule 资源。

规则类型和条件

编辑

根据 Kibana 应用程序和上下文,系统可能会提示您选择要创建的规则类型。某些应用程序会为您预选规则类型。

每种规则类型都提供了定义检测条件的自身方法,但是由一系列子句组成的表达式是一种常见的模式。例如,在 Elasticsearch 查询规则中,您指定索引、查询和阈值,该阈值使用度量聚合操作(countaveragemaxminsum

UI for defining rule conditions in an Elasticsearch query rule

所有规则都必须具有检查间隔,该间隔定义了评估规则条件的频率。检查已排队;它们尽可能接近定义的值运行。

有关可用规则类型以及如何配置它们的详细信息,请参阅 规则类型

操作

编辑

您可以向规则添加一个或多个操作,以便在满足其条件以及不再满足其条件时生成通知。

每个操作都使用一个连接器,该连接器提供 Kibana 服务或第三方集成的连接信息,具体取决于您要将通知发送到的位置。

[预览] 此功能处于技术预览阶段,可能会在将来的版本中更改或删除。Elastic 将努力解决任何问题,但在技术预览中的功能不受正式 GA 功能的支持 SLA 的约束。 一些在 Kibana 内执行操作的连接器(例如 案例连接器)需要较少的配置。例如,您不需要设置操作频率或变量。

选择连接器后,设置操作频率。您可以选择在每个检查间隔或自定义间隔上创建警报摘要。或者,您可以选择为每个警报运行操作(在每个检查间隔、仅当警报状态发生更改时或在自定义间隔时)。

如果您选择自定义操作间隔,则该间隔不能短于规则的检查间隔。

例如,如果您创建 Elasticsearch 查询规则,则可以在自定义间隔上发送汇总新警报、正在进行的警报和已恢复警报的通知

UI for defining alert summary action in an Elasticsearch query rule

当您选择为每个警报运行操作时,必须指定一个操作组。每个规则类型都有一组有效操作组,这些组会影响操作运行的时间。例如,您可以将 运行时 设置为 Query matchedRecovered 用于 Elasticsearch 查询规则

UI for defining a recovery action

连接器对每个操作组都有独特的行为。例如,您可以拥有在满足规则条件时创建 Opsgenie 警报的操作,以及关闭 Opsgenie 警报的恢复操作。有关连接器的更多信息,请参阅 连接器

如果您不使用警报摘要,则会为每个警报生成操作,并且规则最终可能会生成大量操作。以以下示例为例,其中一个规则每分钟监控三台服务器的 CPU 使用率 > 0.9,并且操作频率为 On check intervals

  • 第 1 分钟:服务器 X123 > 0.9。将为服务器 X123 发送 一封电子邮件
  • 第 2 分钟:X123 和 Y456 > 0.9。将发送 两封电子邮件,一封用于 X123,一封用于 Y456。
  • 第 3 分钟:X123、Y456、Z789 > 0.9。将发送 三封电子邮件,每封用于 X123、Y456、Z789 中的一封。

在此示例中,在 3 分钟内为同一规则的服务器 X123 发送了三封电子邮件。通常,最好禁止这些重新通知。如果您将操作频率设置为 On custom action intervals,间隔为 5 分钟,则可以通过仅每 5 分钟为继续超过阈值的服务器获取电子邮件来减少噪音

  • 第 1 分钟:服务器 X123 > 0.9。将为服务器 X123 发送 一封电子邮件
  • 第 2 分钟:X123 和 Y456 > 0.9。将为 Y456 发送 一封电子邮件
  • 第 3 分钟:X123、Y456、Z789 > 0.9。将为 Z789 发送 一封电子邮件

要仅在服务器超过阈值时收到一次通知,您可以将操作频率设置为 On status changes。或者,您可以考虑使用警报摘要来减少通知量。

操作变量

编辑

您可以在检测到条件时将规则值传递给操作。要查看规则可用的变量列表,请单击“添加规则变量”按钮

Passing rule values to an action

有关常用操作变量的更多信息,请参阅 规则操作变量

暂停和禁用规则

编辑

规则列表使您可以快速暂停、禁用、启用或删除单个规则。例如,您可以更改规则的状态

Use the rule status dropdown to enable or disable an individual rule

如果有一些当前不需要的规则,请禁用它们以停止运行检查并减少集群的负载。

暂停规则时,规则检查将继续按计划运行,但警报不会生成操作。您可以暂停一段时间、无限期地暂停或安排单次或定期停机时间

Snooze notifications for a rule

当规则处于暂停状态时,您可以取消或更改此状态的持续时间。

[预览] 此功能处于技术预览阶段,可能会在将来的版本中更改或删除。Elastic 将努力解决任何问题,但在技术预览中的功能不受正式 GA 功能的支持 SLA 的约束。 要暂时禁止规则的通知,您还可以创建一个 维护窗口

查看规则详情

编辑

您可以通过查看 上次响应(位于 堆栈管理 > 规则 中)来确定规则的运行状况。规则可以具有以下响应之一

失败
规则运行时出错。
成功
规则运行时未出错。
警告
规则运行时出现一些非关键错误。

单击规则名称以访问规则详细信息页面

Rule details page with multiple alerts

在此示例中,规则检测站点在 24 小时内提供的字节数是否超过阈值。四个站点超过了阈值。这些称为警报——检测到条件的事件——并且警报名称、状态、检测时间和条件持续时间在此视图中显示。警报根据是否满足规则条件而进出列表。有关警报的更多信息,请访问 查看警报

如果规则操作未能成功运行,则可以在 历史记录 选项卡上查看详细信息。在 消息 列中,单击警告或展开图标 用于打开包含文档详细信息的浮层的双箭头图标 或单击 出错的操作 列中的数字以打开 出错的操作 面板。在此示例中,操作失败是因为更新了 xpack.actions.email.domain_allowlist 设置,并且操作的电子邮件收件人不再包含在允许列表中

Rule histor page with alerts that have errored actions

导入和导出规则

编辑

要导入和导出规则,请使用 已保存的对象

某些规则类型无法通过此界面导出

安全规则 可以使用 安全 UI 导入和导出。

堆栈监控规则自动创建,因此无法在已保存对象中进行管理。

导出时规则将被禁用。导入成功后,系统会提示您重新启用规则。

Rules import banner