警报和规则
编辑警报和规则编辑
APM 应用程序允许您定义 规则 来检测 APM 数据中的复杂条件,并在满足这些条件时触发内置的 操作。
支持以下 规则
- 阈值规则: 当延迟或失败事务率异常时发出警报。阈值规则可以像您想要的那样广泛或细粒度,使您能够准确地定义何时发出警报 - 无论是在环境级别、服务名称级别、事务类型级别和/或事务名称级别。
- 异常规则: 当服务的延迟异常时发出警报。异常规则可以在环境级别、服务级别和/或事务类型级别设置。
- 错误计数规则: 当服务中的错误数量超过定义的阈值时发出警报。错误计数规则可以在环境级别、服务级别和错误组级别设置。
下面,我们将逐步介绍创建两个 APM 规则的过程。
有关 创建规则 悬浮面板的完整演练,包括每个可配置属性的详细信息,请参阅 Kibana 的 创建和编辑规则。
示例:创建延迟异常规则编辑
当服务的延迟异常时,延迟异常规则会触发。由于应用程序的某些部分比其他部分更重要,并且对延迟的容忍度不同,因此我们将针对服务中的特定事务。
在继续之前,请确定您要为其创建延迟异常规则的服务名称、事务类型和环境。本指南将根据以下条件为所有服务创建警报
- 服务:
{your_service.name}
- 事务:
{your_transaction.name}
- 环境:
{your_service.environment}
- 严重性级别:严重
- 每五分钟检查一次
- 当规则状态更改时,向 Slack 频道发送警报
在 APM 应用程序中的任何页面上,选择 警报和规则 > 创建异常规则。更改规则的名称,但不要编辑标签。
根据上述条件,定义以下规则详细信息
-
服务 -
{your_service.name}
-
类型 -
{your_transaction.name}
-
环境 -
{your_service.environment}
-
具有严重性的异常 -
严重
-
每 -
5 分钟
接下来,添加连接器类型。可以选择多个连接器,但在此示例中,我们对 Slack 感兴趣。选择 Slack > 创建连接器。输入连接器的名称,并粘贴您的 Slack Webhook URL。如果您需要创建一个,请参阅 Slack 的 Webhook 文档。
默认消息作为警报的起点提供。您可以使用 Mustache 模板语法,即 {{variable}}
在检测到条件时将其他警报值传递给操作。可以通过选择 添加变量 按钮 访问可用变量列表。
单击 保存。您的规则已创建,现在处于活动状态!
示例:创建错误计数阈值警报编辑
当服务中的错误数量超过定义的阈值时,错误计数阈值警报会触发。由于某些错误比其他错误更重要,因此本指南将重点关注特定的错误组 ID。
在继续之前,请确定您要为其创建延迟异常规则的服务名称、环境名称和错误组 ID。查找错误组 ID 的最简单方法是选择您感兴趣的服务,然后导航到 错误 选项卡。
本指南将根据以下条件为错误组 ID 创建警报
- 服务:
{your_service.name}
- 环境:
{your_service.environment}
- 错误分组键:
{your_error.ID}
- 错误率在过去五分钟内超过 25 个错误
- 按
service.name
和service.environment
分组警报 - 每 1 分钟检查一次
- 通过电子邮件将警报发送给网站可靠性团队
在 APM 应用程序中的任何页面上,选择 警报和规则 > 创建错误计数规则。更改警报的名称,但不要编辑标签。
根据上述条件,定义以下规则详细信息
-
服务:
{your_service.name}
-
环境:
{your_service.environment}
-
错误分组键:
{your_error.ID}
-
高于 -
25 个错误
-
在过去 -
5 分钟
-
按 -
service.name
service.environment
-
每 -
1 分钟
或者,您可以使用 KQL 过滤器来限制警报的范围
- 打开 使用 KQL 过滤器。
-
添加过滤器,例如,要实现与上述示例相同的效果
service.name:"{your_service.name}" and service.environment:"{your_service.environment}" and error.grouping_key:"{your_error.ID}"
使用 KQL 过滤器来限制范围适用于延迟阈值、失败事务率阈值和错误计数阈值规则。
选择 电子邮件 连接器,然后单击 创建连接器。填写所需的详细信息:发件人、主机、端口等,然后单击 保存。
默认消息作为警报的起点提供。您可以使用 Mustache 模板语法,即 {{variable}}
在检测到条件时将其他警报值传递给操作。可以通过选择 添加变量 按钮 访问可用变量列表。
单击 保存。警报已创建,现在处于活动状态!
查看活动警报编辑
活动警报在 APM 应用程序中以多种方式显示和分组。
按服务组查看警报编辑
如果您使用的是 服务组 功能,则可以按服务组查看警报。从服务组概述页面,单击红色警报指示器以打开 警报 选项卡,其中包含与创建服务组时使用的过滤器匹配的预定义过滤器。
按服务查看警报编辑
可以在任何服务的上下文中查看警报。选择服务后,转到 警报 选项卡以查看为所选服务处于活动状态的任何警报。
管理警报和规则编辑
在 APM 应用程序中,选择 警报和规则 > 管理规则 以转到 Kibana 规则 页面。在此页面上,您可以禁用、静音和删除 APM 警报。
更多信息编辑
有关更多信息,请参阅 警报。
如果您使用的是具有安全性的 本地 Elastic Stack 部署,则 Elasticsearch 和 Kibana 之间的通信必须配置 TLS。有关更多信息,请参阅警报 先决条件。