创建库存阈值规则

编辑

基于基础设施应用中基础设施库存页面列出的资源,您可以创建一个阈值规则,当指标达到或超过特定资源或基础设施中一组资源的值时通知您。

此外,每个规则都可以使用多个条件来定义,这些条件结合了指标和阈值,以创建精确的通知并减少误报。

当您选择创建库存告警时,您在基础设施库存页面上配置的参数将自动填充到规则中。您可以先使用库存查看您希望收到通知的基础设施中的哪些节点,然后只需点击几下即可快速创建一个规则。

库存条件
编辑

每个规则的条件都可以应用于与您选择的库存类型相关的特定指标。您可以选择聚合类型、指标,并通过包含警告阈值,您可以根据严重性分数获得基于多个阈值的告警。创建规则时,如果特定指标未返回数据或规则未能查询 Elasticsearch,您仍然可以收到通知。您还可以设置高级选项,例如必须满足规则条件的连续运行次数,才能发出告警。

在此示例中,Kubernetes Pod 是选定的库存类型。条件规定,对于 ingress-nginx 命名空间中的任何 Pod,如果内存使用率达到或超过 95%,您将收到严重告警;如果内存使用率达到或超过 90%,您将收到警告告警。图表显示了将规则应用于过去 20 分钟数据的結果。请注意,图表时间范围是 FOR THE LAST 字段中指定的回溯窗口值的 20 倍。

Inventory rule
操作类型
编辑

通过将规则连接到使用以下受支持的内置集成的操作来扩展您的规则。

某些连接器类型是付费商业功能,而其他连接器类型是免费的。要比较 Elastic 订阅级别,请访问订阅页面

选择连接器后,必须设置操作频率。您可以选择在每个检查间隔或自定义间隔上创建告警摘要。例如,每小时发送电子邮件通知,总结新的、正在进行的和已恢复的告警。

Action types

或者,您可以设置操作频率,以便选择操作运行的频率(例如,在每个检查间隔、仅当告警状态更改时或在自定义操作间隔)。在这种情况下,您可以通过选择特定阈值条件来精确定义告警触发的时机:AlertWarningRecovered(曾经高于阈值的值现在已降至阈值以下)。

Configure when an alert is triggered

您还可以通过指定操作仅在匹配 KQL 查询或告警在特定时间范围内发生时才运行来进一步完善操作运行的条件。

  • 如果告警匹配查询:输入一个 KQL 查询,该查询定义必须满足的字段值对或查询条件才能发送通知。该查询仅搜索为规则指定的索引中的告警文档。
  • 如果在时间范围内生成告警:设置时间范围详细信息。只有在您定义的时间范围内生成告警时,才会发送通知。
Configure a conditional alert
操作变量
编辑

使用默认通知消息或自定义它。您可以通过单击消息文本框上方的图标并从可用变量列表中选择来向消息添加更多上下文。

Default notification message for infrastructure threshold rules with open "Add variable" popup listing available action variables

以下变量特定于此规则类型。您还可以指定所有规则共有的变量

context.alertDetailsUrl
指向告警故障排除视图的链接,用于获取更多上下文和详细信息。如果未配置 server.publicBaseUrl,则此值将为空字符串。
context.alertState
告警的当前状态。
context.cloud
如果源中可用,则由 ECS 定义的云对象。
context.container
如果源中可用,则由 ECS 定义的容器对象。
context.group
报告数据的组的名称。
context.host
如果源中可用,则由 ECS 定义的主机对象。
context.labels
与触发此告警的实体关联的标签列表。
context.metric
指定条件中的指标名称。用法:(ctx.metric.condition0ctx.metric.condition1 等)。
context.orchestrator
如果源中可用,则由 ECS 定义的编排器对象。
context.originalAlertState
告警恢复之前的状态。此值仅在恢复上下文中可用。
context.originalAlertStateWasALERT
告警恢复之前的状态的布尔值。这可用于模板条件。此值仅在恢复上下文中可用。
context.originalAlertStateWasWARNING
告警恢复之前的状态的布尔值。这可用于模板条件。此值仅在恢复上下文中可用。
context.reason
告警原因的简要说明。
context.tags
与触发此告警的实体关联的标签列表。
context.threshold
指定条件的指标的阈值。用法:(ctx.threshold.condition0ctx.threshold.condition1 等)。
context.timestamp
检测到告警的时间戳。
context.value
指定条件中指标的值。用法:(ctx.value.condition0ctx.value.condition1 等)。
context.viewInAppUrl
指向告警源的链接。
设置
编辑

对于基础设施阈值规则,无法将显式索引模式设置为配置的一部分。索引模式是从基础设施应用程序的设置页面上的指标索引推断出来的。

每次执行规则检查时,都会检查指标索引设置,但在创建规则时不会存储它。

时间戳字段(在设置下设置)决定哪个字段用于查询中的时间戳。