

# 针对 AWS 数据库中的性能详情计数器指标创建警报
<a name="CloudWatch_alarm_database_performance_insights"></a>

CloudWatch 包含 **DB\$1PERF\$1INSIGHTS** 指标数学函数，您可以使用该函数将 Amazon Relational Database Service 和 Amazon DocumentDB（与 MongoDB 兼容）中的性能详情计数器指标引入 CloudWatch。**DB\$1PERF\$1INSIGHTS** 还以亚分钟为间隔引入 `DBLoad` 指标。您可以根据这些指标设置 CloudWatch 警报。

有关 Amazon RDS 性能详情的更多信息，请参阅[在 Amazon RDS 上使用性能详情监控数据库负载](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html)。

有关 Amazon DocumentDB 性能详情的更多信息，请参阅[使用性能详情进行监控](https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html.html)。

基于 **DB\$1PERF\$1INSIGHTS** 函数的警报不支持异常检测。

**注意**  
**DB\$1PERF\$1INSIGHTS** 检索的精度为亚分钟的高分辨率指标仅适用于 **DBLoad** 指标，或者如果您启用了更高分辨率的增强监控，则适用于操作系统指标。有关 Amazon RDS 增强监控的更多信息，请参阅[使用增强监控监控操作系统指标](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html)。  
您可以使用 **DB\$1PERF\$1INSIGHTS** 函数创建高分辨率警报。高分辨率警报的最长评估范围为三小时。您可以使用 CloudWatch 控制台绘制任何时间范围内通过 **DB\$1PERF\$1INSIGHTS** 函数检索到的指标的图表。

**创建基于性能详情指标的警报**

1. 通过 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 打开 CloudWatch 控制台。

1. 在导航窗格中，选择 **Alarms**（告警），然后选择 **All alarms**（所有告警）。

1. 选择**创建警报**。

1. 选择 **Select Metric（选择指标）**。

1. 选择**添加数学**下拉列表，然后从列表中选择**所有函数**、**DB\$1PERF\$1INSIGHTS**。

   选择 **DB\$1PERF\$1INSIGHTST** 后，系统将显示一个数学表达式框，您可以在其中应用或编辑数学表达式。

1. 在数学表达式框中，输入 **DB\$1PERF\$1INSIGHTS** 数学表达式，然后选择**应用**。

   例如，**DB\$1PERF\$1INSIGHTS(‘RDS’, ‘db-ABCDEFGHIJKLMNOPQRSTUVWXY1’, ‘os.cpuUtilization.user.avg’)**
**重要**  
使用 **DB\$1PERF\$1INSIGHTS** 数学表达式时，必须指定数据库的唯一数据库资源 ID。这与数据库标识符不同。要在 Amazon RDS 控制台中查找数据库资源 ID，请选择数据库实例以查看其详细信息。然后，选择**配置**选项卡。**资源 ID** 将显示在**配置**部分中。

   有关 **DB\$1PERF\$1INSIGHTS** 函数和可用于指标数学的其他函数的信息，请参阅 [指标数学语法和函数](using-metric-math.md#metric-math-syntax)。

1. 选择**选择指标**。

   将显示 **Specify metric and conditions（指定指标和条件）**页面，其中显示一个图表以及有关您选择的数学表达式的其他信息。

1. 对于 **Whenever *expression* is（每当表达式）**，指定表达式是必须大于、小于还是等于阈值。在**于...** 下面，指定阈值。

1. 选择**其他配置**。对于**触发警报的数据点数**，指定必须有多少个评估期（数据点）处于 `ALARM` 状态才能触发警报。如果此处的两个值匹配，则会创建一个告警；如果多个连续评估期违例，该告警将变为 `ALARM`（告警）状态。

   要创建“M（最大为 N）”告警，为第一个值指定的数字应小于为第二个值指定的数字。有关更多信息，请参阅 [告警评估](alarm-evaluation.md)。

1. 对于**缺失数据处理**，选择在缺失某些数据点时的警报行为。有关更多信息，请参阅 [配置 CloudWatch 告警处理缺失数据的方式](alarms-and-missing-data.md)。

1. 选择**下一步**。

1. 在**通知**下面，选择一个在警报处于 `ALARM`、`OK` 或 `INSUFFICIENT_DATA` 状态时通知的 SNS 主题。

   要使告警为相同告警状态或不同告警状态发送多个通知，请选择**添加通知**。

   要让警报不发送通知，请选择**删除**。

1. 要让警报执行 Auto Scaling、EC2、Lambda 或 Systems Manager 操作，请选择相应的按钮，然后选择警报状态和要执行的操作。如果您选择 Lambda 函数作为警报操作，则需要指定函数名称或 ARN，并且可以选择该函数的特定版本。

   告警只有在进入“ALARM（告警）”状态时才能执行 Systems Manager 操作。有关 Systems Manager 操作的更多信息，请参阅[将 CloudWatch 配置为通过告警创建 OpsItems ](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-create-OpsItems-from-CloudWatch-Alarms.html)和[事件创建](https://docs.aws.amazon.com/incident-manager/latest/userguide/incident-creation.html)。
**注意**  
要创建执行 SSM Incident Manager 操作的告警，您必须具有特定的权限。有关更多信息，请参阅 [AWS Systems Manager Incident Manager 的基于身份的策略示例](https://docs.aws.amazon.com/incident-manager/latest/userguide/security_iam_id-based-policy-examples.html)。

1. 在完成后，选择**下一步**。

1. 输入警报的名称和说明。然后选择**下一步**。

   名称必须仅包含 UTF-8 字符，并且不能包含 ASCII 控制字符。描述可以包含 Markdown 格式，该格式仅在 CloudWatch 控制台的警报**详细信息**选项卡中显示。Markdown 非常适合用于向运行手册或其他内部资源添加链接。

1. 在 **Preview and create** 下面，确认具有所需的信息和条件，然后选择 **Create alarm**。