

# 使用 Amazon CloudWatch 控制面板
控制面板

Amazon CloudWatch 提供自动预构建控制面板，也支持创建自己的控制面板。控制面板可帮助您在单个视图中监控资源，甚至包括分布在不同区域的资源。您可以使用 CloudWatch 控制面板为 AWS 资源创建遥测数据的自定义视图。

利用自定义控制面板，您可以创建以下各项：
+ 所选指标和告警的单一视图，用于帮助您跨一个或多个区域评估资源和应用程序的运行状况。您可以在每个图表上选择用于每个指标的颜色，以便轻松地跨多个图表跟踪同一指标。
+ 一个操作手册，为团队成员提供有关如何对操作事件期间发生的特定事故做出响应的指南。
+ 关键资源与应用程序测量的公共视图，团队成员可以共享该视图，以便在操作事件期间加快通信流。

如果您有多个 AWS 账户，则可以设置 *CloudWatch 跨账户可观测性*，然后在监控账户中创建丰富的跨账户控制面板。您可以无缝搜索、可视化和分析您的指标、日志和跟踪记录，而不受账户限制。

通过 CloudWatch 跨账户可观测性，您可以在监控账户的控制面板中执行以下操作：
+ 搜索、查看和创建源账户中的指标图表。一个图表可以包含来自多个账户的指标。
+ 在监控账户中创建告警，以监视源账户中的指标。
+ 查看位于源账户中的日志组的日志事件，并对源账户中的日志组运行 CloudWatch Logs Insights 查询。监控账户中的单个 CloudWatch Logs Insights 查询可以同时查询多个源账户中的多个日志组。
+ 在 X-Ray 中的跟踪地图中查看源账户的节点。然后，您可以将该地图筛选到特定的源账户。

当您登录监控账户时，支持 CloudWatch 跨账户可观测性功能的每个页面的右上角都会出现一个蓝色的 **Monitoring account**（监控账户）徽章。

有关设置 CloudWatch 跨账户可观测性的更多信息，请参阅 [CloudWatch 跨账户可观测性](CloudWatch-Unified-Cross-Account.md)。

 您可以从控制台或使用 AWS CLI 或 `PutDashboard` API 操作来创建控制面板。您可以将控制面板添加到收藏夹列表。在收藏夹列表中，您不仅可以访问您收藏的控制面板，还可以访问您最近访问过的控制面板。有关更多信息，请参阅[将控制面板添加到收藏夹列表](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/add-dashboard-to-favorites.html)。

要访问 CloudWatch 控制面板，您需要以下项目之一：
+ `AdministratorAccess` 策略
+ `CloudWatchFullAccess` 策略
+ 包含以下一个或多个特定权限的自定义策略：
  + `cloudwatch:GetDashboard` 和 `cloudwatch:ListDashboards` 能够查看控制面板
  + `cloudwatch:PutDashboard` 能够创建或修改控制面板
  + `cloudwatch:DeleteDashboards` 能够删除控制面板

**Topics**
+ [开始使用自动控制面板](GettingStarted.md)
+ [创建自定义控制面板](create_dashboard.md)
+ [利用控制台创建跨账户跨区域的控制面板](create_xaxr_dashboard.md)
+ [

## 以编程方式创建跨账户跨区域的控制面板
](#create_xaxr_dashboard_API)
+ [使用来自不同账户和区域的指标创建图表](#create-graph-xaxr-dashboard)
+ [将来自不同账户的警报添加到跨账户的控制面板](create-alarm-xaxr-dashboard.md)
+ [使用变量创建控制面板](cloudwatch_dashboard_variables.md)
+ [在控制面板上使用小组件](create-and-work-with-widgets.md)
+ [共享控制面板](cloudwatch-dashboard-sharing.md)
+ [使用实时数据](cloudwatch-live-data.md)
+ [查看动画控制面板](cloudwatch-animated-dashboard.md)
+ [将控制面板添加到收藏夹列表](add-dashboard-to-favorites.md)
+ [更改时间段覆盖设置或刷新间隔](change_dashboard_refresh_interval.md)
+ [更改时间范围或时区格式](change_dashboard_time_format.md)

# 开始使用 CloudWatch 自动控制面板
开始使用自动控制面板

CloudWatch 主页自动显示有关您使用的每项 AWS 服务的指标。此外，您还可以创建自定义控制面板，以显示有关自定义应用程序的指标，并显示您选择的指标的自定义集合。

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

将显示 CloudWatch 概览主页。

![\[显示警报及其当前状态的 CloudWatch 概述主页示例，以及可能出现在概述主页上的其他指标图表小组件示例。\]](http://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/images/CW-default-dashboard-update.png)


概览显示以下项目且自动刷新。
+ **按 AWS 服务列出的警报**会显示您在账户中使用的 AWS 服务列表以及这些服务中的警报状态。旁边会显示您账户中的两个或四个警报。该数字取决于您使用的 AWS 服务数量。显示的警报是处于 ALARM 状态或最近更改状态的警报。

  这些上部区域可帮助您通过查看每项服务中的警报状态和最新更改了状态的警报，评测 AWS 服务的运行状况。这有助于您监控并快速诊断问题。
+ 这些区域下方是*默认控制面板*（如果有）。默认控制面板是您已创建且命名为 **CloudWatch-Default** 的自定义控制面板。这是一种方便的方式，供您将有关自己的自定义服务或应用程序的指标添加到概览页面，或从您最想监控的 AWS 服务引入其他关键指标。

**注意**  
CloudWatch 主页上的自动控制面板仅显示当前账户中的信息，即使该账户是为 CloudWatch 跨账户可观测性设置的监控账户，也是如此。有关创建自定义跨账户控制面板的信息，请参阅 [利用 AWS 管理控制台创建 CloudWatch 跨账户跨区域的控制面板](create_xaxr_dashboard.md)。

在此概述中，您可以看到包含来自多个服务的指标的跨 AWS 服务控制面板，或者将视图重点放在特定的资源组或特定 AWS 服务上。这样，您就可以将视图缩小到您感兴趣的资源子集。

**Topics**
+ [

# 查看跨服务 CloudWatch 控制面板
](CloudWatch_Automatic_Dashboards_Cross_Service.md)
+ [

# 使服务不出现在 CloudWatch 跨服务控制面板中
](Remove_service_from_Cross_Service_Dashboard.md)
+ [

# 查看单项 AWS 服务的 CloudWatch 控制面板
](CloudWatch_Automatic_Dashboards_Focus_Service.md)
+ [

# 查看资源组的 CloudWatch 控制面板
](CloudWatch_Automatic_Dashboards_Resource_Group.md)

# 查看跨服务 CloudWatch 控制面板
查看跨服务控制面板

 您可以切换到跨服务控制面板屏幕，然后与您正在使用的所有 AWS 服务的控制面板互动。CloudWatch 控制台按字母顺序显示您的控制面板，并从每个服务上显示一两个关键指标。

**注意**  
 如果您使用五个或更多 AWS 服务，CloudWatch 控制台不会在概览屏幕上显示跨服务控制面板。

**查看跨服务控制面板**

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

    会将您定向到概览屏幕。

1.  在概览屏幕中，选择显示 **Overview**（概览）的下拉菜单，然后选择 **Cross service dashboard**（跨服务控制面板）。

    会将您定向到跨服务控制面板屏幕。

1.  （可选）如果您使用原始界面，请滚动到 **Cross-service dashboard**（跨服务控制面板）部分，然后选择 **View Cross-service dashboard**（查看跨服务控制面板）。

    会将您定向到跨服务控制面板屏幕。

1. 您可以按两种方式专注于特定服务：

   1. 要查看服务的更多关键指标，请从当前显示 **Cross service dashboard (跨服务控制面板)** 的屏幕顶部的列表中选择其名称。或者，您可以选择服务名称旁边的 **View *Service* dashboard (查看服务控制面板)** 复选框。

      将显示针对该服务的自动控制面板，其中显示该服务的更多指标。此外，对于某些服务，服务控制面板的底部显示与该服务相关的资源。您可以选择该服务控制台中的其中一个资源，并进一步专注于该资源。

   1. 要查看与服务相关的所有警报，请选择屏幕右侧该服务名称旁边的按钮。此按钮上的文本指示您在此服务中已经创建的警报数量，以及任意警报是否处于 ALARM 状态。

      显示多个警报时，具有相似设置（如维度、阈值或时间段）的多个警报可能显示在一个图中。

      然后，您可以查看有关警报的详细信息和查看警报历史记录。为此，请将鼠标悬停在警报图表上，选择操作图标，然后选择**在警报中查看**。

      警报视图显示在新的浏览器标签中，其中显示您的警报列表以及有关所选警报的详细信息。要查看此警报的历史记录，请选择 **History (历史记录)** 选项卡。

1. 您可以专注于特定资源组中的资源。为此，请从其中显示**所有资源**的页面顶部的列表中选择资源组。

   有关更多信息，请参阅 [查看资源组的 CloudWatch 控制面板](CloudWatch_Automatic_Dashboards_Resource_Group.md)。

1. 要更改所有图表和当前显示的警报中显示的时间范围，请在屏幕顶部的**时间范围**旁边选择需要的范围。选择**自定义**可从默认显示的选项之外的多个时间范围选项进行选择。

1. 警报始终一分钟刷新一次。要刷新该视图，请选择屏幕右上角的刷新图标（双曲线箭头）。要更改屏幕上警报之外的项的自动刷新频率，请选择刷新图标旁边的向下箭头，然后选择需要的刷新率。还可以选择关闭自动刷新。

# 使服务不出现在 CloudWatch 跨服务控制面板中
使服务不出现在跨服务控制面板中

您可以防止服务的指标出现在跨服务控制面板中。这有助于您专注于跨服务控制面板以了解您最需要监控的服务。

如果您从跨服务控制面板上删除某个服务，针对该服务的告警仍然会出现在告警的视图中。

**从跨服务控制面板中删除服务的指标**

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

   此时将显示主页。

1. 在页面顶部，在**概览**下选择您要删除的服务。

   视图将改为仅显示该服务的指标。

1. 选择 **Actions (操作)**，然后清除 **Show on cross service dashboard (在跨服务控制面板上显示)** 旁边的复选框。

# 查看单项 AWS 服务的 CloudWatch 控制面板
查看单项服务的控制面板

在 CloudWatch 主页上，您可以让视图专注于单个 AWS 服务。您可以通过同时专注于单个 AWS 服务和资源组来进一步向下钻取。以下过程显示如何仅专注于一个 AWS 服务。

**专注于单个服务**

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

   此时将显示主页。

1. 对于**概述**（**概述**当前显示在下拉菜单中），选择**服务控制面板**。

1. 选择要专注的服务。

   视图将改为显示所选服务的关键指标的图表。

1. 要切换到查看此服务的警报，请在当前显示服务名称的屏幕顶部附近选中**告警中**、**数据不足**或**确定**复选框。

1. 当查看指标时，您可以通过多种方式专注于特定指标：

   1. 要查看任何图表中有关指标的更多详细信息，请将鼠标悬停在图表上，选择操作图标**根据指标查看**。

      该图表显示在新标签中，图表下方列出相关的指标。您可以自定义此图表的视图，同时更改显示的指标和资源、统计数据、时间段以及其他因素，以更好地了解当前情况。

   1. 您可以查看图表中显示的时间范围内的日志事件。这可以帮助您发现您的基础设施中发生的导致意外更改您的指标的事件。

      要查看日志事件，请将鼠标悬停报图表上，选择操作图标，然后选择 **View in logs (在日志中查看)**。

      该 CloudWatch Logs 视图会在新选项卡中出现，并显示您的日志组列表。要查看在原始图表中显示的时间范围内发生的其中一个日志组中的日志事件，请选择该日志组。

1. 当查看警报时，您可以通过多种方式专注于特定警报：

   1. 要查看有关警报的更多详细信息，请将鼠标悬停在警报上，选择操作图标，然后选择**在警报中查看**。

     警报视图显示在新的标签中，其中显示您的警报列表以及有关所选警报的详细信息。要查看此警报的历史记录，请选择 **History (历史记录)** 选项卡。

1. 警报始终一分钟刷新一次。要刷新该视图，请选择屏幕右上角的刷新图标（双曲线箭头）。要更改屏幕上除警报之外的项的自动刷新率，请选择刷新图标旁边的向下箭头，然后选择刷新率。还可以选择关闭自动刷新。

1. 要更改所有图表和当前显示的警报中显示的时间范围，请在屏幕顶部的**时间范围**旁边选择范围。要从默认显示的选项之外的多个时间范围选项进行选择，请选择**自定义**。

1. 要返回到跨服务控制面板，请在当前显示您专注的服务的屏幕顶部的列表中选择 **Overview (概览)**。

   或者，从任何视图中，您可以在屏幕顶部选择 **CloudWatch**，以清除所有筛选器并返回到概览页面。

# 查看资源组的 CloudWatch 控制面板
查看资源组的控制面板

您可以将您的视图专注于显示单个资源组中的指标和警报。使用资源组，您可以使用标签来组织项目，专注于您架构的子集，或区分您的生产环境与开发环境。它们还使您能够专注于 CloudWatch 概览上的每个资源组。有关更多信息，请参阅[什么是 AWS Resource Groups？](https://docs.aws.amazon.com/ARG/latest/userguide/welcome.html)。

当您专注于一个资源组时，显示的内容将更改，而只显示您在其中将资源标记为此资源组一部分的服务。最近的告警区域仅显示与资源组的资源相关联的告警。此外，如果您创建了一个名为 **CloudWatch-Default-*ResourceGroupName*** 的控制面板，它将显示在 **Default dashboard (默认控制面板)** 区域中。

您可以通过同时专注于单个 AWS 服务和资源组来进一步向下钻取。以下过程显示如何仅专注于一个资源组。

**专注于单个资源组**

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

1. 从其中显示**所有资源**的页面顶部，选择一个资源组。

1. 要查看与此资源组相关的更多指标，请在屏幕底部附近选择 **View cross service dashboard (查看跨服务控制面板)**。

   此时将显示跨服务控制面板，同时只显示与此资源组相关的服务。对于每项服务，将显示一个或两个关键指标。

1. 要更改所有图表和当前显示的警报中显示的时间范围，对于屏幕顶部的**时间范围**，选择一个范围。要从默认显示的选项之外的多个时间范围选项进行选择，请选择**自定义**。

1. 警报始终一分钟刷新一次。要刷新该视图，请选择屏幕右上角的刷新图标（双曲线箭头）。要更改屏幕上除警报之外的项的自动刷新率，请选择刷新图标旁边的向下箭头，然后选择刷新率。还可以选择关闭自动刷新。

1. 要返回以显示有关您账户中所有资源的信息，请在当前显示资源组名称的屏幕顶部附近，选择**所有资源**。

# 创建 CloudWatch 自定义控制面板
创建自定义控制面板

 要开始使用，请创建 CloudWatch 控制面板。您可以创建多个控制面板，而且您可以将它们添加到一个收藏夹列表。您不会受 AWS 账户 内的控制面板数量的限制。所有控制面板都适用于全局。它们不是某个区域所特有的。

 以下程序说明如何从 CloudWatch 控制台创建控制面板。您可以在命令行界面中使用 `PutDashboard` API 操作来创建控制面板。API 操作包含对您的控制面板内容进行定义的 JSON 字符串。有关使用 `PutDashboard` API 操作创建控制面板的更多信息，请参阅 *Amazon CloudWatch API 参考*中的 [PutDashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutDashboard.html)。

**提示**  
 如果使用 `PutDashboard` API 操作创建新的控制面板，您可以使用来自现有控制面板的 JSON 字符串。

**从控制台创建控制面板**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择 **Create dashboard**（创建控制面板）。

1. 在 **Create new dashboard**（创建新的控制面板）对话框中，输入控制面板的名称，然后选择 **Create dashboard**（创建控制面板）。

    如果使用的名称是 **CloudWatch-Default** 或 **CloudWatch-Default-*ResourceGroupName***，控制面板将在 CloudWatch 概述主页的 **Default Dashboard**（默认控制面板）下方显示。有关更多信息，请参阅 [开始使用 CloudWatch 自动控制面板](GettingStarted.md)。

1.  在 **Add to this dashboard**（添加到此控制面板）对话框中执行下列操作之一：
   +  要将图表添加到控制面板，请选择 **Line**（折线图）或 **Stacked area**（堆叠面积图），然后选择 **Configure**（配置）。在 **Add metric graph**（添加指标图表）对话框中，选择要生成图表的指标，然后选择 **Create widget**（创建小组件）。如果某指标由于超过 14 天未发布数据而未显示在对话框中，您可以手动添加该指标。有关更多信息，请参阅 [在 CloudWatch 控制面板上手动绘制指标图表](add_old_metrics_to_graph.md)。
   +  要将显示指标的数字添加到控制面板中，请选择 **Number**（数字），然后选择 **Configure**（配置）。在 **Add metric graph**（添加指标图表）对话框中，选择要生成图表的指标，然后选择 **Create widget**（创建小组件）。
   +  要将文本块添加到控制面板中，请选择 **Text**（文本），然后选择 **Configure**（配置）。在 **New text widget**（新的文本小组件）对话框中，对于 **Markdown**，使用 [Markdown](https://docs.aws.amazon.com/general/latest/gr/aws-markdown.html) 设置文本格式，然后选择 **Create widget**（创建小组件）。

1.  （可选）选择 **Add widget**（添加小组件）并重复步骤 4，将另一个小组件添加到控制面板。您可以多次重复此步骤。

   对于控制面板上的每个图表，右上角都有一个信息图标。选择此图标可查看图表中指标的描述。

1.  选择 **Save dashboard**。

# 利用 AWS 管理控制台创建 CloudWatch 跨账户跨区域的控制面板
利用控制台创建跨账户跨区域的控制面板

您可以创建*跨账户跨区域的控制面板*，这些控制面板可将来自多个 AWS 账户和多个区域的 CloudWatch 数据汇总到一个控制面板中。在此高级控制面板中，您可以了解整个应用程序，并深入了解更多特定的控制面板，而无需登录和注销账户或切换区域。

**先决条件**  
您必须先启用至少一个共享账户和至少一个监控账户，然后才能创建跨账户跨区域的控制面板。此外，要能够使用 CloudWatch 控制台创建跨账户的控制面板，您必须启用控制台以实现跨账户功能。有关更多信息，请参阅 [跨账户跨区域的 CloudWatch 控制台](Cross-Account-Cross-Region.md)。

**创建跨账户跨区域的控制面板**

1. 登录到监控账户。

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择一个控制面板，或创建一个新的控制面板。

1. 在屏幕顶部，您可以在账户和区域之间切换。在创建控制面板时，您可以包含来自多个账户和区域的小组件。小组件包括图表、告警和 CloudWatch Logs Insights 小组件。

## 以编程方式创建跨账户跨区域的控制面板


您可以使用 AWS API 和 SDK 以编程方式创建控制面板。有关更多信息，请参阅 [PutDashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutDashboard)。

为了启用跨账户跨区域的控制面板，我们已向控制面板正文结构添加新参数，如下表和示例中所示。有关总体控制面板正文结构的更多信息，请参阅[控制面板正文结构和语法](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/CloudWatch-Dashboard-Body-Structure.html)。


| 参数 | 使用 | 范围 | 默认 | 
| --- | --- | --- | --- | 
|  `accountId` | 指定小组件或指标所在的账户的 ID。 |  小组件或指标 |  当前登录的账户  | 
|  `region` | 指定指标的区域。 |  小组件或指标 |  控制台中选定的当前区域  | 

以下示例显示了跨账户跨区域的控制面板中的小组件的 JSON 源。

此示例将 `accountId` 字段设置为小组件级别的共享账户的 ID。这指定了此小组件中的所有指标将来自该共享账户和区域。

```
{
  "widgets": [
    {
          ...
          "properties": {
        "metrics": [
                   …
        ],
        "accountId": "111122223333",
        "region": "us-east-1"
      }
    }
  ]
}
```

此示例在每个指标级别以不同的方式设置 `accountId` 字段。在此示例中，此指标数学表达式中的各个指标来自不同的共享账户和不同的区域。

```
{
  "widgets": [
    {
          ...
          "properties": {
        "metrics": [
          [
            {
              "expression": "SUM(METRICS())",
              "label": "[avg: ${AVG}] Expression1",
              "id": "e1",
              "stat": "Sum"
            }
          ],
          [
            "AWS/EC2",
            "CPUUtilization",
            {
              "id": "m2",
              "accountId": "5555666677778888",
              "region": "us-east-1",
              "label": "[avg: ${AVG}] ApplicationALabel "
            }
          ],
          [
            ".",
            ".",
            {
              "id": "m1",
              "accountId": "9999000011112222",
              "region": "eu-west-1",
              "label": "[avg: ${AVG}] ApplicationBLabel"
            }
          ]
        ],
        "view": "timeSeries",
        "region": "us-east-1", ---> home region of the metric. Not present in above example 
              "stacked": false,
        "stat": "Sum",
        "period": 300,
        "title": "Cross account example"
      }
    }
  ]
}
```

此示例显示了一个警报小组件。

```
{
  "type": "metric",
  "x": 6,
  "y": 0,
  "width": 6,
  "height": 6,
  "properties": {
    "accountID": "111122223333",
    "title": "over50",
    "annotations": {
      "alarms": [
        "arn:aws:cloudwatch:us-east-1:379642911888:alarm:over50"
      ]
    },
    "view": "timeSeries",
    "stacked": false
  }
}
```

此示例针对的是 CloudWatch Logs Insights 小组件。

```
{
  "type": "log",
  "x": 0,
  "y": 6,
  "width": 24,
  "height": 6,
  "properties": {
    "query": "SOURCE 'route53test' | fields @timestamp, @message\n| sort @timestamp desc\n| limit 20",
    "accountId": "111122223333",
    "region": "us-east-1",
    "stacked": false,
    "view": "table"
  }
}
```

以编程方式创建控制面板的另一种方法是，先在 AWS 管理控制台中创建一个控制面板，然后复制此控制面板的 JSON 源。为此，请加载该控制面板，然后依次选择 **Actions (操作)** 和 **View/edit source (查看/编辑源)**。然后，您可以复制此控制面板 JSON 以将其用作模板，从而创建类似的控制面板。

## 在 CloudWatch 控制面板中使用来自不同的账户和区域的指标创建图表
使用来自不同账户和区域的指标创建图表

1. 登录到监控账户。

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

1. 在导航窗格中，选择 **Metrics**（指标），然后选择 **All metrics**（所有指标）。

1.  选择要从中添加指标的账户和区域。您可以从屏幕右上角附近的账户和区域下拉菜单中选择您的账户和区域。

1. 将所需指标添加到图表中。有关更多信息，请参阅 [绘制指标的图表](graph_metrics.md)。

1. 重复步骤 4-5 以添加来自其他账户和区域的指标。

1. （可选）选择 **Graphed metrics**（绘制的指标）选项卡，然后添加使用了所选指标的指标数学函数。有关更多信息，请参阅 [将数学表达式与 CloudWatch 指标结合使用](using-metric-math.md)。

   您还可以设置单个图表以包含多个 `SEARCH` 函数。每项搜索均可引用不同的账户或区域。

1. 在完成图表后，依次选择 **Actions (操作)** 和 **Add to dashboard (添加到控制面板)**。

   选择您的跨账户控制面板，然后选择 **Add to dashboard (添加到控制面板)**。

# 将来自不同账户的警报添加到 CloudWatch 跨账户的控制面板
将来自不同账户的警报添加到跨账户的控制面板

1. 登录到监控账户。

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

1. 在页面的顶部，选择告警所在的账户。

1. 在导航窗格中，选择**告警**。

1. 选中要添加的警报旁边的复选框，然后选择 **Add to dashboard (添加到控制面板)**。

1. 选择要将警报添加到的跨账户的控制面板，然后选择 **Add to dashboard (添加到控制面板)**。

# 使用控制面板变量创建灵活的 CloudWatch 控制面板
使用变量创建控制面板

使用*控制面板变量*创建灵活的控制面板，从而可以根据控制面板的输入字段中的值，在多个小部件中快速显示不同的内容。例如，您可以创建一个可在不同 Lambda 函数或 Amazon EC2 实例 ID 之间快速切换的控制面板，也可以创建一个可以切换到不同 AWS 区域的控制面板。

创建使用变量的控制面板后，您可以将相同的变量模式复制到其他现有的控制面板。

使用控制面板变量，可以为使用您的控制面板的用户完善操作工作流。此外还可以降低成本，因为是在一个控制面板中使用控制面板变量，而不是创建多个类似的控制面板。

**注意**  
如果您共享包含控制面板变量的控制面板，则与您共享该控制面板的人将无法更改变量值。

## 控制面板变量的类型


控制面板变量可以是*属性变量*，也可以是*模式变量*。
+ *属性变量*更改某个属性时，会更改控制面板的所有小部件中出现该属性之处。该属性可以是控制面板的 JSON 源中的任何 JSON 属性，例如 `region`，也可以是指标的维度名称，例如 `InstanceID` 或 `FunctionName`。

  有关使用属性变量的教程，请参阅 [教程：将函数名称作为变量创建 CloudWatch Lambda 控制面板](cloudwatch_dashboard_variables_property.md)。

  有关控制面板的 JSON 源的更多信息，请参阅 [控制面板正文结构和语法](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/CloudWatch-Dashboard-Body-Structure.html)。在 CloudWatch 控制台中，选择**操作**、**查看/编辑源**，即可查看任何自定义控制面板的 JSON 源。
+ *模式变量*使用正则表达式模式，来更改所有出现某个 JSON 属性之处，或仅更改其中的特定部分。

  有关使用模式变量的教程，请参阅 [教程：创建使用正则表达式模式在 AWS 区域之间切换的控制面板](cloudwatch_dashboard_variables_pattern.md)。

属性变量适用于大多数应用场景，设置起来也不太复杂。

**Topics**
+ [

## 控制面板变量的类型
](#cloudwatch_dashboard_variables_types)
+ [

# 将变量复制到其他 CloudWatch 控制面板
](cloudwatch_dashboard_variables_copy.md)
+ [

# 教程：创建使用正则表达式模式在 AWS 区域之间切换的控制面板
](cloudwatch_dashboard_variables_pattern.md)
+ [

# 教程：将函数名称作为变量创建 CloudWatch Lambda 控制面板
](cloudwatch_dashboard_variables_property.md)

# 将变量复制到其他 CloudWatch 控制面板
将变量复制到其他控制面板

使用实用的变量创建控制面板后，您可以将这些变量复制到其他现有的控制面板。有关控制面板变量的更多信息，请参阅 [使用控制面板变量创建灵活的 CloudWatch 控制面板](cloudwatch_dashboard_variables.md)。

**将控制面板变量复制到其他控制面板**

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

1.  在导航窗格中，选择**控制面板**，然后选择包含要复制的变量的控制面板名称。在需要时输入字符串以查找名称相符的控制面板。

1. 选择**操作**、**变量**、**管理变量**。

1. 选择要复制的变量旁的单选按钮，然后选择**复制到其他控制面板**。

1. 选中该选择框，然后开始键入要将变量复制到其中的控制面板的名称。

1. 选择该控制面板名称，然后选择**复制变量**。

# 教程：创建使用正则表达式模式在 AWS 区域之间切换的控制面板
教程：使用正则表达式模式在区域之间切换

此过程中的步骤说明了如何创建可以在区域之间切换的灵活控制面板。本教程使用正则表达式*模式变量*，而不是属性变量。有关使用属性变量的教程，请参阅 [教程：将函数名称作为变量创建 CloudWatch Lambda 控制面板](cloudwatch_dashboard_variables_property.md)。

对于许多应用场景，您可以创建使用属性变量在区域之间切换的控制面板。但如果小部件依赖包含区域名称的 Amazon 资源名称（ARN），则必须使用模式变量来更改 ARN 中的区域名称。

**使用控制面板模式变量创建灵活的多区域控制面板**

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

1.  在导航窗格中，选择 **Dashboards**、**Create dashboard**。

1.  输入控制面板的名称，然后选择**创建控制面板**。

1.  向控制面板添加小部件。添加要显示特定区域数据的小部件时，请不要指定仅在一个区域有值的任何维度。例如，对于 Amazon EC2 指标，应指定聚合指标，而不是 **InstanceID** 维度的指标。

   有关向控制面板添加小部件的更多信息，请参阅 [在 CloudWatch 控制面板上使用小组件](create-and-work-with-widgets.md)。

1. 添加小部件后，在查看控制面板时，选择**操作**、**变量**、**创建变量**。

1. 选择**模式变量**。

1. 对于**变量更改的属性**，输入当前控制面板区域的名称，例如 **us-east-2**。

   如果该框下方的标签显示了将该受变量影响的小部件，则说明您输入的区域正确。

1. 对于**输入类型**，对于此应用场景，选择**单选按钮**。

1. 对于**定义输入的填充方式**，选择**创建自定义值列表**。

1. 在**创建自定义值**中，输入要切换的区域，每行一个区域。在每个区域之后，输入逗号，然后输入要为该单选按钮显示的标签。例如：

   **us-east-1, N. Virginia**

   **us-east-2, Ohio**

   **eu-west-3, Paris**

   填写自定义值时，**预览**窗格会更新显示单选按钮的效果。

1. （可选）要进行更多设置，请选择**辅助设置**并执行以下一项或多项操作：
   + 要自定义变量的名称，请在**自定义变量名称**中输入名称。
   + 要自定义变量输入字段的标签，请在**输入标签**中输入标签。在本教程中，请输入 **Region:**。

     在此处输入值时，**预览**窗格会更新显示单选按钮的效果。
   + 要设置首次打开控制面板时此变量的默认值，请在**默认值**中输入默认值。

1. 选择**添加变量**。

   这时会显示控制面板，顶部附近的区域单选按钮旁将显示一个 **Region:** 标签。在区域之间切换时，所有使用该变量的小部件都将显示有关所选区域的信息。

# 教程：将函数名称作为变量创建 CloudWatch Lambda 控制面板
教程：使用 Lambda 函数名称作为变量创建控制面板

此过程中的步骤说明了如何使用属性变量，创建可显示各种指标图表的灵活控制面板。这包括在控制面板上显示下拉选择框，用来在不同的 Lambda 函数之间切换所有图表中的指标。

此类控制面板的其他应用场景示例，包括将 `InstanceId` 作为变量来创建带有实例 ID 下拉列表的指标控制面板。您还可以创建一个控制面板，将 `region` 作为变量来显示来自不同区域的同一组指标。

**使用控制面板属性变量创建灵活的 Lambda 控制面板**

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

1.  在导航窗格中，选择 **Dashboards**、**Create dashboard**。

1.  输入控制面板的名称，然后选择**创建控制面板**。

1.  向控制面板添加显示 Lambda 函数指标的小部件。创建这些小部件时，为小部件指标指定 **Lambda**、**按函数名称**。对于该函数，请指定要包含在此控制面板中的一个 Lambda 函数。

   有关向控制面板添加小部件的更多信息，请参阅 [在 CloudWatch 控制面板上使用小组件](create-and-work-with-widgets.md)。

1. 添加小部件后，在查看控制面板时，选择**操作**、**变量**、**创建变量**。

1. 选择**属性变量**。

1. 对于**变量更改的属性**，选择**函数名称**。

1. 对于**输入类型**，对于此应用场景，我们建议选择**选择菜单（下拉列表）**。这将在控制面板中创建一个下拉菜单，让您可以在其中选择要显示指标的 Lambda 函数名称。

   如果此控制面板仅在变量的两三个不同值之间切换，则建议选择**单选按钮**。

   如果您希望输入或粘贴变量的值，则可以选择**文本输入**。此选项不包括下拉列表或单选按钮。

1. 选择**选择菜单（下拉列表）**时，必须选择是通过输入值还是使用指标搜索来填充菜单。对于此应用场景，假设您有大量 Lambda 函数，但不想手动输入所有函数。选择**使用指标搜索结果**，然后执行以下操作：

   1. 选择**预先构建的查询**、**Lambda**、**错误**。

      （选择**错误**时，不会将**错误**指标添加到控制面板，而是快速填充**函数名称**变量选择框。）

   1. 选择**按函数名称**，然后选择**搜索**。

      在**搜索**按钮下，您将看到已选中**函数名称**。您还会看到一条关于在输入框中找到多少个**函数名称**维度值的消息。

1. （可选）要进行更多设置，请选择**辅助设置**并执行以下一项或多项操作：
   + 要自定义变量的名称，请在**自定义变量名称**中输入名称。
   + 要自定义变量输入字段的标签，请在**输入标签**中输入标签。
   + 要设置首次打开控制面板时此变量的默认值，请在**默认值**中输入默认值。

1. 选择**添加变量**。

   这时将在控制面板顶部附近显示一个**函数名称**下拉选择框。您可以在此框中选择一个 Lambda 函数，然后所有使用该变量的小部件都将显示有关所选函数的信息。

   以后向控制面板添加其他小部件来监视**函数名称**维度的 Lambda 指标时，这些小部件将自动使用该变量。

# 在 CloudWatch 控制面板上使用小组件
在控制面板上使用小组件

您可以在 CloudWatch 控制面板上使用以下类型的小组件：
+ **图表小组件**：您可以将包含一个或多个指标的图表添加到您的 CloudWatch 控制面板。可添加到控制面板的图表类型包括：***折线图***、***堆叠面积图***、***数字***、***量规图***、***条形图***和***饼图***。当您不再需要这些图表时，可以将它们从控制面板中删除。
+ **手动指标小组件**：如果某个指标在过去 14 天内未发布数据，在搜索要添加到 CloudWatch 控制面板上的图表的指标时，将找不到该指标。您可以手动将任何指标添加到现有图表。
+ **Metrics Explorer 小组件**：Metrics Explorer 小组件包括具有相同标签或共享相同资源属性（例如实例类型）的多个资源的图表。创建或删除匹配的资源时，这些小组件会保持最新状态。将 Metrics Explorer 小组件添加到控制面板可帮助您更有效地对环境进行故障排除。

  例如，您可以通过分配代表其环境（例如生产或测试）的标签来监控 EC2 实例队列。然后，您可以使用这些标签来筛选和聚合操作指标，例如 `CPUUtilization`，以便了解与每个标签关联的 EC2 实例的运行状况和性能。
+ **折线图小组件**：使用折线图小组件，您可以比较一段时间内的指标。您还可以使用小组件的缩微贴图缩放功能来检查折线图的各个部分，而无需在放大和缩小视图之间进行切换。本节内容中的程序描述如何在 CloudWatch 控制面板上添加和删除折线图小组件。有关使用小组件的缩微贴图缩放功能和折线图的信息，请参阅[放大折线图或堆叠面积图](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/zoom-graph.html)。
+ **数字小组件**：使用数字小组件，您可以在最新的指标值和趋势出现后立即查看。由于数字小组件包含走势图功能，因此您可以在单个图表中对指标趋势的上下两部分进行可视化。本节内容中的程序描述如何在 CloudWatch 控制面板中添加和删除数字小组件。
+ **量规图小组件**：使用量规图小组件，您可以对介于范围之间的指标值进行可视化。例如，您可以使用量规图小组件来绘制关于百分比和 CPU 使用率的图表，以便在发生任何性能问题时进行观察和诊断。本节内容中的程序描述如何在 CloudWatch 控制面板中添加和删除量规图小组件。
+ **文本小组件**：文本小组件包含 [Markdown](https://docs.aws.amazon.com/general/latest/gr/aws-markdown.html) 格式的文本块。您可以在 CloudWatch 控制面板中添加、编辑或删除文本小组件。
+ **警报小组件**：要将警报小组件添加到控制面板，请选择下列选项之一：
  + 在小组件中添加单个警报，该小组件会显示警报指标的图表和警报状态。
  + 添加一个*警报状态小组件*，它可以在一个网格中显示多个警报的状态。仅显示警报名称和当前状态，不显示图表。一个警报状态小组件最多可包含 100 个警报。
+ **表格小组件**：您可以通过数据表小组件查看指标的原始数据点以及该原始数据的快速摘要。数据表小组件的图表完全基于实际数据，因此更容易理解所呈现的数据点。本节内容中的程序描述如何在 CloudWatch 控制面板中添加和删除数据表小组件。下图显示一个表小组件的示例，其中包含一组 CloudWatch 指标的“最小值”、“最大值”、“总和”和“平均值”统计数据列。
+ **链接图表**：您可以在控制面板上将图表链接在一起，这样当您放大或缩小一个图表时，其他图表将同时放大或缩小。可以取消链接图表以仅允许缩放一个图表。

**Topics**
+ [添加图表小组件](add_graph_dashboard.md)
+ [删除图表小组件](remove_graph_dashboard.md)
+ [在控制面板上手动绘制指标图表](add_old_metrics_to_graph.md)
+ [编辑图表](edit_graph_dashboard.md)
+ [重命名图表](rename_graph_dashboard.md)
+ [移动图表](move_graph_dashboard.md)
+ [更改图表的大小](#resize_graph_dashboard)
+ [暂时更改图表的大小](#resize_graph_temp_dashboard)
+ [添加 Metrics Explorer 小组件](add_metrics_explorer_dashboard.md)
+ [添加折线图小组件](add_line_dashboard.md)
+ [删除折线图](remove_line_dashboard.md)
+ [添加数字小组件](add_number_dashboard.md)
+ [删除数字小组件](remove_number_dashboard.md)
+ [添加量规图小组件](add_gauge_dashboard.md)
+ [删除量规图小组件](remove_gauge_dashboard.md)
+ [使用自定义小组件](add_custom_widget_dashboard.md)
+ [添加文本小组件](add_text_dashboard.md)
+ [编辑文本小组件](edit_text_dashboard.md)
+ [删除文本小组件](remove_text_dashboard.md)
+ [添加警报](add_alarm_dashboard.md)
+ [添加警报状态小组件](add_alarm_widget_dashboard.md)
+ [删除提醒小组件](remove_alarm_dashboard.md)
+ [使用数据表小组件](add_remove_table_dashboard.md)
+ [链接图表](link_graphs_dashboard.md)
+ [取消链接图表](unlink_graphs_dashboard.md)

# 将图表小组件添加到 CloudWatch 控制面板
添加图表小组件

本节内容中的步骤描述如何在您的控制面板中添加和删除图表。如需了解有关如何编辑控制面板上的图表，请参阅[在 CloudWatch 控制面板上编辑图表](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/edit_graph_dashboard.html)。

**将图表添加到控制面板**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  选择 **\$1** 符号，然后选择您想要添加到控制面板的图表，然后选择 **下一步**。

   1.  如果您选择 ***Line***（折线图）、***Stacked area***（堆叠面积图）、***Bar***（条形图）或 ***Pie***（饼图），请选择 **Metrics**（指标）。

1.  在**浏览**选项卡中，搜索或浏览要生成图表的指标，然后选择所需指标。

1.  （可选）要更改图表的时间范围，请在屏幕上部选择一个预定义的时间范围。这些时间范围从 1 小时到 1 周（***1h***（1 小时）、***3h***（3 小时）、***12h***（12 小时）、***1d***（1 天）、***3d***（3 天）或者 ***1w***（1 周））。

    要设置自己的时间范围，请选择 **Custom**（自定义）。

   1. （可选）要让此小组件继续使用您选择的时间范围，即使控制面板其余部分的时间范围稍后发生了更改，请选择**保留时间范围**。

1.  （可选）要更改您的图表的小组件类型，请使用预定义时间范围旁边的下拉菜单。

1.  （可选）在 **Graphed metrics**（绘制的指标）中，您可以为指标添加动态标签，然后更改您的指标的标签、标签颜色、统计数据和时间段。您还可以从左到右决定 Y 轴上的标签的位置。

   1.  要添加动态标签，请选择 **Graphed metrics**（绘制的指标），然后选择 **Add dynamic labels**（添加动态标签）。动态标签显示关于图表图例中的指标的统计数据。每当刷新控制面板或图表时，动态标签都会自动更新。默认情况下，添加到标签的动态值显示在标签开头。有关更多信息，请参阅 [使用动态标签](graph-dynamic-labels.md)。

   1.  要更改指标的颜色，请选择指标旁边的色块。

   1.  要更改统计数据，请选择 ***Statistic***（统计数据）下方的下拉菜单，然后选择一个新值。有关更多信息，请参阅[统计数据](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Statistic)。

   1.  要更改时间段，请选择 ***Period***（时间段）列下方的下拉菜单，然后选择一个新值。

1. 如果要创建量规图小组件，则必须选择**选项**选项卡并指定用于量规图两端的**最小**值和**最大**值。

1.  （可选）要自定义 Y 轴，请选择 **Options**（选项）。您可以在标签字段的 ***Left Y-axis***（左 Y 轴）下方添加自定义标签。如果图表在 Y 轴的右侧显示值，您也可以自定义该标签。您还可以在 Y 轴上设置最小值和最大值限制，以便图表仅显示您指定的值范围。

1.  （可选）要在折线图或堆叠面积图中添加或编辑横向注释，或者向量规图小组件添加阈值，请选择**选项**：

   1.  要添加横向注释或阈值，请选择**添加横向注释**或**添加阈值**。

   1.  对于***标签***，输入注释的标签，然后选择对勾图标。

   1.  对于 ***Value***（值），选择当前值旁边的笔和纸图标，然后输入新值。在输入值后，选择对勾图标。

   1.  对于 ***Fill***（填充），选择下拉菜单，然后指定注释将如何使用阴影。您可以选择 ***None***（无）、***Above***（上方）、***Between***（中间）或者 ***Below***（下方）。要更改填充颜色，请选择注释旁边的色块。

   1.  对于 ***Axis***（轴），指定注释显示在 Y 轴的左侧还是右侧。

   1.  要隐藏注释，请清除要隐藏的注释旁边的复选框。

   1.  要删除注释，请选择 ***Actions***（操作）下方的 **X**。
**注意**  
 您可以重复这些步骤以向同一个图表或量规图添加多个横向注释或阈值。

1.  （可选）要添加或编辑垂直注释，请选择 **Options**（选项）：

   1.  要添加垂直注释，请选择 **Add vertical annotation (添加垂直注释)**。

   1.  对于 ***Label***（标签），选择当前注释旁边的笔和纸图标，然后输入新的注释。如果您想要仅显示日期和时间，请将标签字段留空。

   1.  对于 ***Date***（日期），选择当前的日期和时间，然后输入新的日期和时间。

   1.  对于 ***Fill***（填充），选择下拉菜单，然后指定注释将如何使用阴影。您可以选择 ***None***（无）、***Above***（上方）、***Between***（中间）或者 ***Below***（下方）。要更改填充颜色，请选择注释旁边的色块。

   1.  要隐藏注释，请清除要隐藏的注释旁边的复选框。

   1.  要删除注释，请选择 ***Actions***（操作）下方的 **X**。
**注意**  
 您可以重复这些步骤以向同一个图表添加多个垂直注释。

1. 选择 **Create widget**。

1. 选择 **Save dashboard**。

# 从 CloudWatch 控制面板删除图表小组件
删除图表小组件

**从控制面板中删除图表**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  在要删除的图表的右上角，选择 **Widget actions**（小组件操作），然后选择 **Delete**（删除）。

1.  选择 **Save dashboard**。

# 在 CloudWatch 控制面板上手动绘制指标图表
在控制面板上手动绘制指标图表

**将在搜索时找不到的指标添加到图表**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 控制面板必须已包含要添加该指标的图表。如果没有，请创建图表并在其中添加任何指标。有关更多信息，请参阅 [将图表小组件添加到 CloudWatch 控制面板](add_graph_dashboard.md)。

1. 依次选择**操作**、**编辑控制面板**。

   出现一个 JSON 数据块。该数据块指定控制面板中包含的小部件及其内容。下面的示例是一个定义图表的数据块的一部分。

   ```
   {
     "type": "metric",
     "x": 0,
     "y": 0,
     "width": 6,
     "height": 3,
     "properties": {
       "view": "singleValue",
       "metrics": [
         [
           "AWS/EBS",
           "VolumeReadOps",
           "VolumeId",
           "vol-1234567890abcdef0"
         ]
       ],
       "region": "us-west-1"
     }
   },
   ```

   此示例中，下面的部分定义了显示在此图表中的指标。

   ```
   [ "AWS/EBS", "VolumeReadOps", "VolumeId", "vol-1234567890abcdef0" ]
   ```

1. 在右方括号后面添加一个逗号（如果没有），然后在逗号后面添加一个带有方括号的类似部分。在该新部分中，指定要添加到图表的指标的命名空间、指标名称以及所需的任何维度。示例如下：

   ```
   [ "AWS/EBS", "VolumeReadOps", "VolumeId", "vol-1234567890abcdef0" ],
   [ "MyNamespace", "MyMetricName", "DimensionName", "DimensionValue" ]
   ```

   有关指标的 JSON 格式的详细信息，请参阅 Amazon CloudWatch API 参考中的[指标小组件对象的属性](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/CloudWatch-Dashboard-Body-Structure.html#CloudWatch-Dashboard-Properties-Metric-Widget-Object)。

1. 选择**更新**。

# 在 CloudWatch 控制面板上编辑图表
编辑图表

 您可以编辑添加到 CloudWatch 控制面板的图表。您可以更改图表的标题、统计数据或时间段。您可以在您的图表中添加、更新和删除指标。如果图表包含不止一个指标，您可以通过隐藏不使用的指标，减少视觉混乱。本节内容中的程序描述如何编辑控制面板上的图表。有关创建图表的信息，请参阅[在 CloudWatch 控制面板中添加或删除图表](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/add_remove_graph_dashboard.html)。

------
#### [  New interface  ]

**在控制面板上编辑图表**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  在要编辑的图表的右上角，选择 **Widget actions**（小组件操作），然后选择 **Edit**（编辑）。

1.  要更改图表的标题，请选择当前标题旁边的笔和纸图标。输入新标题，然后选择 **Apply**（应用）。

1.  （可选）要更改图表的时间范围，请在图表上部选择一个预定义的时间范围。这些时间范围从 1 小时到 1 周（***1h***（1 小时）、***3h***（3 小时）、***12h***（12 小时）、***1d***（1 天）、***3d***（3 天）或者 ***1w***（1 周））。

    要设置自己的时间范围，请选择 **Custom**（自定义）。

   1. （可选）要让此小组件继续使用您选择的时间范围，即使控制面板其余部分的时间范围稍后发生了更改，请选择**保留时间范围**。

1.  要更改您的图表的小组件类型，请使用预定义时间范围旁边的下拉菜单。

1.  在 **Graphed metrics**（绘制的指标）中，您可以为指标添加动态标签，然后更改您的指标的标签、标签颜色、统计数据和时间段。您还可以从左到右决定 Y 轴上的标签的位置。

   1.  要为某指标添加动态标签，请选择 **Dynamic labels**（动态标签）。动态标签显示关于图表图例中的指标的统计数据。每当刷新控制面板或图表时，动态标签都会自动更新。默认情况下，添加到标签的动态值显示在标签开头。有关更多信息，请参阅 [使用动态标签](graph-dynamic-labels.md)。

   1.  要更改指标的颜色，请选择指标旁边的色块。

   1.  要更改统计数据，请选择 ***Statistic***（统计数据）列下的统计值，然后选择一个新值。有关更多信息，请参阅 [统计信息](cloudwatch_concepts.md#Statistic)。

   1.  要更改时间段，请选择 ***Period***（时间段）列下的时间段值，然后选择一个新值。

1.  要添加或编辑横向注释，请选择 **Options**（选项）：

   1.  要添加横向注释，请选择 **Add horizontal annotation**：

   1.  对于 **Label**（标签），选择当前注释旁边的笔和纸图标。然后输入新注释。在输入注释后，选择对勾图标。

   1.  对于 **Value**（值），选择当前指标值旁边的笔和纸图标。然后输入新指标值。在输入值后，选择对勾图标。

   1.  对于 **Fill**（填充），选择列下的下拉菜单，然后指定注释将如何使用阴影。您可以选择 **None**（无）、**Above**（上方）、**Between**（中间）或者 **Below**（下方）。如果选择 **Between**（中间），系统将显示另一个新的标签和值字段。
**提示**  
 您可以通过选择注释旁边的彩色方块来更改填充颜色。

   1.  对于 **Axis**（轴），指定注释显示在 Y 轴的左侧还是右侧。

   1.  要隐藏注释，请取消选择要在图表上隐藏的注释旁边的复选框。

   1.  要删除注释，请选择 **Actions**（操作）列下的 **X**。
**注意**  
 您可以重复这些步骤以向同一个图表添加多个横向注释。

1.  要添加或编辑垂直注释，请选择 **Options**（选项）：

   1.  要添加垂直注释，请选择 **Add vertical annotation (添加垂直注释)**。

   1.  对于 **Label**（标签），选择当前注释旁边的笔和纸图标。然后输入新注释。在输入注释后，选择对勾图标。
**提示**  
 要仅显示日期和时间，请将标签字段留空。

   1.  对于 **Date**（日期），选择当前日期和时间。然后，输入新的日期和时间。

   1.  对于 **Fill**（填充），选择列下的下拉菜单，然后指定注释将如何使用阴影。您可以选择 **None**（无）、**Above**（上方）、**Between**（中间）或者 **Below**（下方）。如果选择 **Between**（中间），系统将显示一个新的标签和值字段。
**提示**  
 您可以通过选择注释旁边的彩色方块来更改填充颜色。
**注意**  
 您可以重复这些步骤以向同一个图表添加多个垂直注释。

   1.  要隐藏注释，请取消选择要在图表上隐藏的注释旁边的复选框。

   1.  要删除注释，请选择 **Actions**（操作）列下的 **X**。

1.  要自定义 Y 轴，请选择 **Options**（选项）。在 ***Left Y-axis***（左 Y 轴）的下方，您可以为 **Label**（标签）中输入自定义标签。如果图表在右 Y 轴上显示值，您也可以自定义该标签。您还可以在 Y 轴上设置最小值和最大值，以便图表仅显示您指定的值范围。

1.  完成更改后，选择 **Update widget**（更新小组件）。

**隐藏或更改图表图例的位置**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  在要编辑的图表的右上角，选择 **Widget actions**（小组件操作）。选择 **Legend**（图例），然后选择 **Hidden**（隐藏）、**Bottom**（底部）或 **Right**（右侧）。

**为控制面板上的图表暂时隐藏指标**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  为您想要在图表脚注中隐藏的指标选择色块。当您将鼠标悬停在色块上时，色块中会显示 ***X***；而当您选中它时，方块会变成灰色。

1.  要恢复隐藏的指标，请清除灰色方块中的 **X**。

------
#### [  Original interface  ]

**在控制面板上编辑图表**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  将鼠标悬停在要编辑的图表的右上角。选择 **Widget actions**（小组件操作），然后选择 **Edit**（编辑）。

1.  要更改图表的标题，请选择当前标题旁边的铅笔图标，然后输入新的标题。

1.  要更改图表的时间范围，请在图表的上部区域中选择一个预定义的时间范围。这些时间从 1 小时到 1 周（***1h***（1 小时）、***3h***（3 小时）、***12h***（12 小时）、***1d***（1 天）、***3d***（3 天）或者 ***1w***（1 周））。

   1.  要设置自己的时间范围，请选择 **Custom**（自定义）。

1.  要更改图表的小组件类型，请选择 **Graph options**（图表选项）选项卡。您可以选择 ***Line***（折线图）、***Stacked area***（堆叠面积图）、***Number***（数字）、***Bar***（条形图）或 ***Pie***（饼图）。
**提示**  
 您可以通过选择预定义时间范围旁边的下拉菜单来更改图表的小组件类型。

1.  在 **Graphed metrics**（绘制的指标）中，您可以为指标添加动态标签，然后更改您的指标的标签、标签颜色、统计数据和时间段。您还可以从左到右决定 Y 轴上的标签的位置。

   1.  要为某指标添加动态标签，请选择 **Dynamic labels**（动态标签）。动态标签显示关于图表图例中的指标的统计数据。每当刷新控制面板或图表时，动态标签都会自动更新。默认情况下，添加到标签的动态值显示在标签开头。有关更多信息，请参阅 [使用动态标签](graph-dynamic-labels.md)。

   1.  要更改指标的颜色，请选择指标旁边的色块。

   1.  要更改统计数据，请选择 ***Statistic***（统计数据）列下的统计值，然后选择一个新值。有关更多信息，请参阅 [统计信息](cloudwatch_concepts.md#Statistic)。

   1.  要更改时间段，请选择 ***Period***（时间段）列下的时间段值，然后选择一个新值。

1.  要添加或编辑横向注释，请选择 **Graph options**：

   1.  要添加横向注释，请选择 **Add horizontal annotation**：

   1.  对于 **Label**（标签），选择当前注释旁边的铅笔图标。然后输入新注释。在输入注释后，选择对勾图标。

   1.  对于 **Value**（值），选择当前指标值旁边的铅笔图标。然后输入新指标值。在输入值后，选择对勾图标。

   1.  对于 **Fill**（填充），选择列下的下拉菜单，然后指定注释将如何使用阴影。您可以选择 **None**（无）、**Above**（上方）、**Between**（中间）或者 **Below**（下方）。如果选择 **Between**（中间），系统将显示一个新的标签和值字段。
**提示**  
 您可以通过选择注释旁边的彩色方块来更改填充颜色。

   1.  对于 **Axis**（轴），指定注释显示在 Y 轴的左侧还是右侧。

   1.  要隐藏注释，请取消选择要在图表上隐藏的注释旁边的复选框。

   1.  要删除注释，请选择 **Actions**（操作）列下的 **X**。
**注意**  
 您可以重复这些步骤以向同一个图表添加多个横向注释。

1.  要添加或编辑垂直注释，请选择 **Graph options**（图表选项）：

   1.  要添加垂直注释，请选择 **Add vertical annotation (添加垂直注释)**。

   1.  对于 **Label**（标签），选择当前注释旁边的铅笔图标。然后输入新注释。在输入注释后，选择对勾图标。
**提示**  
 要仅显示日期和时间，请将标签字段留空。

   1.  对于 **Date**（日期），选择当前日期和时间旁边的铅笔图标。然后，输入新的日期和时间。

   1.  对于 **Fill**（填充），选择列下的下拉菜单，然后指定注释将如何使用阴影。您可以选择 **None**（无）、**Above**（上方）、**Between**（中间）或者 **Below**（下方）。如果选择 **Between**（中间），系统将显示一个新的标签和值字段。
**提示**  
 您可以通过选择注释旁边的彩色方块来更改填充颜色。
**注意**  
 您可以重复这些步骤以向同一个图表添加多个垂直注释。

   1.  要隐藏注释，请取消选择要在图表上隐藏的注释旁边的复选框。

   1.  要删除注释，请选择 **Actions**（操作）列下的 **X**。

1.  要自定义 Y 轴，请选择 **Graph options (图表选项)**。在 ***Left Y-axis***（左 Y 轴）的下方，您可以为 **Label**（标签）中输入自定义标签。如果图表在右 Y 轴上显示值，您也可以自定义该标签。您还可以在 Y 轴上设置最小值和最大值，以便图表仅显示您指定的值范围。

1.  完成更改后，选择 **Update widget**（更新小组件）。

**隐藏或更改图表图例的位置**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  将鼠标悬停在要编辑的图表的右上角，然后选择 **Widget actions**（小组件操作）。选择 **Legend**（图例），然后选择 **Hidden**（隐藏）、**Bottom**（底部）或 **Right**（右侧）。

**为控制面板上的图表暂时隐藏指标**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  为您想要在图表脚注中隐藏的指标选择色块。当您将鼠标悬停在色块上时，色块中会显示 ***X***；而当您选中它时，方块会变成灰色。

1.  要恢复隐藏的指标，请清除灰色方块中的 **X**。

------

# 在 CloudWatch 控制面板上重命名图表
重命名图表

您可以在控制面板上更改 CloudWatch 分配给图表的默认名称。

**在控制面板上重命名图表**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 将鼠标指针悬停在图表标题上，选择**小部件操作**，然后选择**编辑**。

1. 在 **Edit graph** 屏幕上靠近顶部的部分，选择图表的标题。

1. 对于**标题**，输入新的名称，然后选择**确定**（对勾）。在 **Edit graph (编辑图表)** 屏幕的右下角，选择 **Update widget (更新小部件)**。

# 在 CloudWatch 控制面板上移动图表
移动图表

**在控制面板上移动图表**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 请执行以下操作之一：
   + 将鼠标指针悬停在图表标题的上方，直至选择图标出现。选择图表并将其拖动到控制面板上的新位置。
   + 要将小组件移动到控制面板的左上角或左下角，请选择小组件右上角的垂直省略号，即可打开**小组件操作**菜单。然后选择**移动**，并选择小组件要移动到的位置。

1. 选择 **Save dashboard**。

## 在 CloudWatch 控制面板上更改图表的大小
更改图表的大小

**更改图表的大小**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 要增大或减小尺寸，请将鼠标指针悬停在图表的上方，然后拖动图表的右下角。到达希望的大小时，停止拖放。

1. 选择 **Save dashboard**。

## 在 CloudWatch 控制面板上暂时更改图表的大小
暂时更改图表的大小

**暂时放大图表**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 选择图表。或者，将鼠标指针悬停在图表标题的上方，然后依次选择 **Widget actions** 和 **Enlarge**。

# 将 Metrics Explorer 小组件添加到 CloudWatch 控制面板
添加 Metrics Explorer 小组件

以下步骤说明了如何使用控制台将 Metrics Explorer 小组件添加到控制面板。您还可以以编程方式或使用 CloudFormation 将其添加。有关更多信息，请参阅 [Metrics Explorer 小组件对象定义](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/CloudWatch-Dashboard-Body-Structure.html#CloudWatch-Dashboard-Properties-Metric-Explorer-Object)和 [ AWS::CloudWatch::Dashboard](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html)。

**将 Metrics Explorer 小组件添加到控制面板**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择要向其添加 Metrics Explorer 小组件的控制面板的名称。

1. 选择 **\$1** 符号。

1. 选择 **Explorer**，然后选择 **Next（下一步）**。
**注意**  
您必须选择加入新的控制面板视图才能添加 Metrics Explorer 小组件。要加入，请在导航窗格中选择 **Dashboards（控制面板）**，然后在页面顶部的广告条中选择 **try out the new interface（试用新界面）**。

1. 请执行以下操作之一：
   + 要使用模板，请选择 **Pre-filled Explorer widget（预填充的 Explorer 小组件）**，然后选择要使用的模板。
   + 要创建自定义可视化，请选择 **Empty Explorer widget（空 Explorer 小组件）**。

1. 选择**创建**。

   如果您使用了模板，则该小组件会显示在控制面板上（包含选定的指标）。如果您对 Explorer 小组件和控制面板感到满意，请选择 **Save dashboard（保存控制面板）**。

   如果您没有使用模板，请继续执行以下步骤。

1. 在 **Explorer** 下的新小组件的 **Metrics（指标）**框中，从服务中选择一个指标或所有可用指标。

   选择指标之后，您可以选择性地重复此步骤添加更多指标。

1. 对于选定的每个指标，CloudWatch 会在指标名称后面显示其将随即使用的统计数据。若要更改此统计数据，请选择统计数据名称，然后选择您想要的统计数据。

1. 在 **From（从）**下，选择标签或资源属性来筛选结果。

   执行此操作后，您可以选择性地重复此步骤以选择更多标签或资源属性。

   如果您选择同一属性的多个值（如两个 EC2 实例类型），则 Explorer 将显示与任一选定属性匹配的所有资源。Explorer 将此选择视为 OR 操作。

   如果您选择了不同的属性或标签，例如 **Production** 标签和 M5 实例类型，则仅显示与所有这些选择匹配的资源。Explorer 将此选择视为 AND 操作。

1. （可选）对于 **Aggregate by（聚合依据）**，选择要用于聚合指标的统计数据。然后，在 **for（聚合方式）**旁边，选择如何聚合列表中的指标。您可以将当前显示的所有资源聚合在一起，也可以按单个标签或资源属性聚合。

   根据您选择的聚合方式，结果可能是单个时间序列或多个时间序列。

1. 在 **Split by（拆分方式）**下，您可以选择将具有多个时间序列的单个图表拆分为多个图表。可以按您在 **Split by（拆分方式）**下选择的多种标准进行拆分。

1. 在 **Graph options（绘制选项图表）**下，您可以通过更改周期、图表类型、图例放置和布局来优化图表。

1. 如果您对 Explorer 小组件和控制面板感到满意，请选择 **Save dashboard（保存控制面板）**。

# 将折线图小组件添加到 CloudWatch 控制面板
添加折线图小组件

**将折线图小组件添加到控制面板**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  选择 **\$1** 符号，然后选择 **Line**（线条）。

1.  选择 **Metrics**（指标）。

1.  选择 **Browse**（浏览），然后选择您想要生成图表的指标。

1.  选择 **Create widget**（创建小组件），然后选择 **Save dashboard**（保存控制面板）。

# 从 CloudWatch 控制面板删除折线图小组件
删除折线图

**从控制面板删除折线图小组件**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  在要删除的折线图小组件的右上角，选择 **Widget actions**（小组件操作），然后选择 **Delete**（删除）。

1.  选择 **Save dashboard**。

# 将数字小组件添加到 CloudWatch 控制面板
添加数字小组件

**注意**  
 只有新接口支持走势图功能。当您创建数字小组件时，走势图功能会自动包含在内。

**将数字小组件添加到控制面板**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  选择 **\$1** 符号，然后选择 **Number**（数字）。

1.  在**浏览**选项卡中，搜索或浏览要显示的指标。

1.  （可选）要更改走势图功能的颜色，请选择 **Graphed metrics**（绘制的指标），然后选择指标标签旁边的颜色框。将显示一个菜单，供您选择不同的颜色或输入六位十六进制颜色代码，以指定颜色。

1.  （可选）要关闭走势图功能，请选择 **Options**（选项）。在 ***Sparkline***（走势图）的下方，勾选复选框。

1.  （可选）要更改数字小组件的时间范围，请在小组件的上部区域中选择一个预定义的时间范围。这些时间范围从 1 小时到 1 周（***1h***（1 小时）、***3h***（3 小时）、***12h***（12 小时）、***1d***（1 天）、***3d***（3 天）或者 ***1w***（1 周））。

    要设置自己的时间范围，请选择 **Custom**（自定义）。

   1. （可选）要让此小组件继续使用您选择的时间范围，即使控制面板其余部分的时间范围稍后发生了更改，请选择**保留时间范围**。

1.  （可选）要让数字小组件显示聚合（***1h***、***3h***、***12h***、***1d***、***3d*** 或 ***1w***）。

    要设置自己的时间范围，请选择 **Custom**（自定义）。

   1. （可选）要让此小组件显示整个时间范围内指标值的平均值，而不是最新的值，请选择**选项**，**时间范围值显示整个时间范围的值**。

1.  选择 **Create widget**（创建小组件），然后选择 **Save dashboard**（保存控制面板）。

**提示**  
 您可以在控制面板屏幕的数字小组件中关闭走势图功能。在要修改的数字小组件的右上角，选择 **Widget actions**（小组件操作）。选择 **Sparkline**（走势图），然后选择 **Hide sparkline**（隐藏走势图）。

# 从 CloudWatch 控制面板删除数字小组件
删除数字小组件

**从控制面板中删除数字小组件**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择包含您想要删除的数字小组件的控制面板。

1.  在要删除的数字小组件的右上角，选择 **Widget actions**（小组件操作），然后选择 **Delete**（删除）。

1.  选择 **Save dashboard**。

# 将量规图小组件添加到 CloudWatch 控制面板
添加量规图小组件

**注意**  
 只有 CloudWatch 控制台中的新接口支持创建量规图小组件。在创建此小组件时，您必须设置一个量规范围。

**将量规图小组件添加到控制面板**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 在控制面板屏幕中，选择 **\$1** 符号，然后选择 **Gauge**（量规图）。

1.  选择 **Browse**（浏览），然后选择您想要生成图表的指标。

1.  选择 **Options**。在 ***Gauge range***（量规范围）下方，设置 **Min**（最小）和 **Max**（最大）值。对于百分比，如 CPU 使用率等，我们建议您将值设置为 `Min` 到 `0` 和 `Max` 到 `100`。

1.  （可选）要更改量规图小组件的颜色，请选择 **Graphed metrics**（绘制的指标），然后选择指标标签旁边的颜色框。将显示一个菜单，供您选择不同的颜色或输入六位十六进制颜色代码，以指定颜色。

1.  选择 **Create widget**（创建小组件），然后选择 **Save dashboard**（保存控制面板）。

# 从 CloudWatch 控制面板删除量规图小组件
删除量规图小组件

**从控制面板中删除量规图小组件**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择包含您想要删除的量规图小组件的控制面板。

1.  在要删除的量规图小组件的右上角，选择 **Widget actions**（小组件操作），然后选择 **Delete**（删除）。

1.  选择 **Save dashboard**。

# 在 CloudWatch 控制面板上使用自定义小组件
使用自定义小组件

*custom widget（自定义小组件）*是一个 CloudWatch 控制面板小组件，它可以使用自定义参数调用任何 AWS Lambda 函数。然后显示返回的 HTML 或 JSON。自定义小组件是一种在控制面板上构建自定义数据视图的简单方法。如果您可以编写 Lambda 代码并创建 HTML，则可以创建有用的自定义小组件。此外，Amazon 提供了几个预构建的自定义小组件，您无需任何代码即可创建这些小组件。

当您创建 Lambda 函数以用作自定义小组件时，我们强烈建议您在函数名称中包含前缀 **customWidget**。这有助于您在将自定义小组件添加到控制面板时，了解哪些 Lambda 函数可以安全使用。

自定义小组件的操作类似于控制面板上的其他小组件。它们可以刷新和自动刷新、调整大小和移动。它们会对控制面板的时间范围做出反应。

如果您已设置 CloudWatch 控制台跨账户功能，则可以将在一个账户中创建的自定义小组件添加到其他账户中的控制面板。有关更多信息，请参阅 [跨账户跨区域的 CloudWatch 控制台](Cross-Account-Cross-Region.md)。

您还可以使用 CloudWatch 控制面板共享功能在自己的网站上使用自定义小组件。有关更多信息，请参阅 [共享 CloudWatch 控制面板](cloudwatch-dashboard-sharing.md)。

**Topics**
+ [

# 有关 CloudWatch 中自定义小组件的详细信息
](add_custom_widget_dashboard_about.md)
+ [

# 自定义 CloudWatch 小组件的安全和 JavaScript
](add_custom_widget_dashboard_security.md)
+ [

# CloudWatch 中自定义小组件中的交互性
](add_custom_widget_dashboard_interactivity.md)
+ [

# 为 CloudWatch 控制面板创建自定义小组件
](add_custom_widget_dashboard_create.md)
+ [

# CloudWatch 控制面板的示例自定义小组件
](add_custom_widget_samples.md)

# 有关 CloudWatch 中自定义小组件的详细信息
有关自定义小组件的详细信息

自定义小组件的工作方式如下：

1. CloudWatch 控制面板调用包含小组件代码的 Lambda 函数。并传递在小组件中定义的任何自定义参数。

1. Lambda 函数返回 HTML、JSON 或 Markdown 字符串。Markdown 以 JSON 格式返回，格式如下：

   ```
   {"markdown":"markdown content"}
   ```

1. 控制面板显示返回的 HTML 或 JSON。

如果函数返回 HTML，则支持大多数 HTML 标签。您可以使用 Cascading 样式表 (CSS) 样式和可扩展矢量图形 (SVG) 来构建复杂的视图。

HTML 元素（例如链接和表格）的默认样式遵循 CloudWatch 控制面板的样式。您可以通过使用内联样式和 `<style>` 标签来自定义此样式。您还可以通过包含具有 `cwdb-no-default-styles` 类的单个 HTML 元素，停用默认样式。以下示例会停用默认样式：`<div class="cwdb-no-default-styles"></div>`。

自定义小组件对 Lambda 的每次调用都包含一个具有以下内容的 `widgetContext` 元素，以便为 Lambda 函数开发人员提供有用的上下文信息。

```
{
  "widgetContext": {
    "dashboardName": "Name-of-current-dashboard",
    "widgetId": "widget-16",
    "accountId": "012345678901",
    "locale": "en",
    "timezone": {
      "label": "UTC",
      "offsetISO": "+00:00",
      "offsetInMinutes": 0
    },
    "period": 300,
    "isAutoPeriod": true,
    "timeRange": {
      "mode": "relative",
      "start": 1627236199729,
      "end": 1627322599729,
      "relativeStart": 86400012,
      "zoom": {
        "start": 1627276030434,
        "end": 1627282956521
      }
    },
    "theme": "light",
    "linkCharts": true,
    "title": "Tweets for Amazon website problem",
    "forms": {
      "all": {}
    },
    "params": {
      "original": "param-to-widget"
    },
    "width": 588,
    "height": 369
  }
}
```

## 默认 CSS 样式


自定义小组件提供以下默认 CSS 样式元素：
+ 您可以使用 CSS 类 **btn** 添加按钮。它将锚点 (`<a>`) 转换为按钮，如以下示例所示：

  ```
  <a class="btn" href=https://amazon.com”>Open Amazon</a>
  ```
+ 您可以使用 CSS 类 **btn btn-primary** 添加主按钮。
+ 默认情况下，以下元素采用样式：**table（表）**、**select（选择）**、**headers (h1, h2, and h3)（标头（标头 1、标头 2 和 标头 3））**、**preformatted text (pre)（预先格式化的文本（预先））**、**input（输入）**和 **text area（文本区域）**。

## 使用描述参数


我们强烈建议您在函数中支持 **describe（描述）**参数，即使它只返回一个空字符串。如果您不支持它，并在自定义小组件中将其调用，它会像显示文档一样显示小组件内容。

如果您包含 **describe（描述）**参数，Lambda 函数以 Markdown 格式返回文档，而不执行任何其他操作。

当您在控制台中创建自定义小组件时，在选择 Lambda 函数后，将出现一个 **Get documentation（获取文档）**按钮。如果选择此按钮，则会使用 **describe（描述）**参数调用该函数并返回该函数的文档。如果文档在 Markdown 中格式正确，CloudWatch 会解析文档中由 YAML 中的三个反引号字符 (```) 引起的第一个条目。然后，它会自动填充参数中的文档。以下是此类格式正确的文档示例。

```
``` yaml
echo: <h1>Hello world</h1>
```
```

# 自定义 CloudWatch 小组件的安全和 JavaScript
安全与 JavaScript

出于安全原因，返回的 HTML 中不允许使用 JavaScript。删除 JavaScript 可防止出现权限升级问题，即 Lambda 函数的编写者注入的代码可能以比在控制面板上查看小组件的用户更高的权限运行。

如果返回的 HTML 包含任何 JavaScript 代码或其他已知的安全漏洞，则会在将其呈现在控制面板上之前，将其从 HTML 中清除。例如，**<iframe>** 和 **<use>** 标签是不允许的，将被删除。

默认情况下，自定义小组件不会在控制面板中运行。相反，如果您信任自定义小组件调用的 Lambda 函数，则必须明确允许其运行。对于单个小组件和整个控制面板，您可以选择允许一次或始终允许。您还可以拒绝对单个小组件和整个控制面板的权限。

# CloudWatch 中自定义小组件中的交互性
自定义小组件中的交互性

尽管不允许使用 JavaScript，但还有其他方法允许与返回的 HTML 进行交互。
+ 返回的 HTML 中的任何元素都可以在 `<cwdb-action>` 标签中使用特殊配置进行标记，该配置可以在弹出窗口中显示信息，在点击时要求确认，并在选择该元素时调用任何 Lambda 函数。例如，您可以定义使用 Lambda 函数调用任何 AWS API 的按钮。可以将返回的 HTML 设置为替换现有 Lambda 小组件的内容，或在模式中显示。
+ 返回的 HTML 可以包含打开新控制台、打开其他客户页面或加载其他控制面板的链接。
+ HTML 可以包含元素的 `title` 属性，如果用户将鼠标悬停在该元素上，它会显示更多信息。
+ 元素可以包含 CSS 选择器，如 `:hover`，它可以调用动画或其他 CSS 效果。该元素可以包含 CSS 选择器，例如，可以调用动画或其他 CSS 效果。您还可以在页面中显示或隐藏元素。您还可以显示或隐藏页面中的元素。

## <cwdb-action> 定义和用法


`<cwdb-action>` 元素定义了前一个元素的行为。`<cwdb-action>` 的内容为要显示的 HTML 或要传递给 Lambda 函数的参数的 JSON 数据块。

以下是 `<cwdb-action>` 元素的示例。

```
<cwdb-action 
     action="call|html" 
     confirmation="message" 
     display="popup|widget" 
     endpoint="<lambda ARN>" 
     event="click|dblclick|mouseenter">  
 
     html | params in JSON
</cwdb-action>
```
+ **操作** – 有效值为 `call`，会调用 Lambda 函数并且显示包含在 `<cwdb-action>` 中的任何 HTML 的 `html`。默认值为 `html`。
+ **确认** – 显示在执行操作之前必须确认的确认消息，允许客户取消。
+ **显示** – 有效值为 `popup` 和 `widget`，会替换小组件本身的内容。默认值为 `widget`。
+ **端点** – 要调用的 Lambda 函数的 Amazon Resource Name (ARN)。如果 `action` 是 `call`，则这是必需的。
+ **事件** – 定义上一个调用操作的元素上的事件。有效值包括 `click`、`dblclick` 和 `mouseenter`。`mouseenter` 事件仅能与 `html` 操作结合使用。默认值为 `click`。

**示例**

以下示例说明了如何使用 `<cwdb-action>` 标签创建按钮，该按钮可使用 Lambda 函数调用重启 Amazon EC2 实例。此选项会在弹出窗口中显示呼叫成功或失败。

```
<a class="btn">Reboot Instance</a>
<cwdb-action action="call" endpoint="arn:aws:lambda:us-east-1:123456:function:rebootInstance" display="popup">  
       { "instanceId": "i-342389adbfef" }
</cwdb-action>
```

下一个示例会在弹出窗口中显示更多信息。

```
<a>Click me for more info in popup</a>
<cwdb-action display="popup"> 
   <h1>Big title</h1>
   More info about <b>something important</b>.
</cwdb-action>
```

此示例为 **Next（下一步）**按钮，该按钮使用对 Lambda 函数的调用替换小组件的内容。

```
<a class="btn btn-primary">Next</a>
<cwdb-action action="call" endpoint="arn:aws:lambda:us-east-1:123456:function:nextPage"> 
   { "pageNum": 2 }
</cwdb-action>
```

# 为 CloudWatch 控制面板创建自定义小组件
创建自定义小组件

要创建自定义小部件，您可以使用 AWS 提供的任意一种示例，也可以创建自己的小部件。AWS 示例包括使用 JavaScript 和 Python 的示例，并且这些示例是通过 AWS CloudFormation 堆栈创建的。有关示例列表，请参阅 [CloudWatch 控制面板的示例自定义小组件](add_custom_widget_samples.md)。

**在 CloudWatch 控制面板中创建自定义小组件**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 选择 **\$1** 符号。

1. 选择 **Custom widget（自定义小组件）**。

1. 使用以下方法之一：
   + 要使用 AWS 提供的自定义小部件，请执行以下操作：

     1. 在下拉框中选择示例。

        CloudFormation 控制台在新浏览器中启动。在 CloudFormation 控制台中，执行以下操作：

     1. （可选）自定义 CloudFormation 堆栈名称。

     1. 选择所示例使用的任何参数。

     1. 选择 **I acknowledge that AWS CloudFormation might create IAM resources（我确认，Amazon CloudFormation 可能创建 IAM 资源）**，然后选择 **Create stack（创建堆栈）**。
   + 要自行创建 AWS 提供的自定义小组件，请执行以下操作：

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

     1. 选择从列表中选择 Lambda 函数，或输入其 Amazon Resource Name (ARN)。如果从列表中选择它，还要指定函数所在的区域以及要使用的版本。

     1. 对于 **Parameters（参数）**，选择函数所使用的任何参数。

     1. 输入小组件的标题。

     1. 对于 **Update on（更新）**，配置应该更新小组件的时间（应该再次调用 Lambda 函数的时间）。此选项可以是以下一个或多个项：**Refresh（刷新）**以便在控制面板自动刷新时更新它，**Resize（调整大小）**以便在调整小组件大小时更新它，或者 **Time Range（时间范围）**以便在调整控制面板的时间范围时更新它（包括缩放图表时）。

     1. 如果对预览满意，请选择 **Create widget（创建小组件）**。

# CloudWatch 控制面板的示例自定义小组件
示例自定义小组件

AWS 在 JavaScript 和 Python 中提供了示例自定义小组件。您可以使用此列表中各个小组件的链接来创建这些示例小组件。您也可以使用 CloudWatch 控制台创建和自定义小组件。此列表中的链接会打开 AWS CloudFormation 控制台并使用 CloudFormation 快速创建链接来创建自定义小组件。

您还可以在 [GitHub](https://github.com/aws-samples/cloudwatch-custom-widgets-samples) 上访问自定义小组件示例。

在此列表之后，显示了每种语言的 Echo 小组件的完整示例。

------
#### [ JavaScript ]

**JavaScript 中的示例自定义小组件**
+ [Echo](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetEcho-js&template=customWidgets/customWidgetEcho-js.yaml&param_DoCreateExampleDashboard=Yes) – 一个基本的回显器，可用于测试 HTML 在自定义小组件中的显示方式，而无需编写新的小组件。
+ [ Hello world](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetHelloWorld-js&template=customWidgets/customWidgetHelloWorld-js.yaml&param_DoCreateExampleDashboard=Yes) – 一个非常基本的入门小组件。
+ [自定义小组件调试程序](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetDebugger-js&template=customWidgets/customWidgetDebugger-js.yaml&param_DoCreateExampleDashboard=Yes) – 一个调试程序小组件，会显示有关 Lambda 运行时环境的有用信息。
+ [查询 CloudWatch Logs Insights](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetLogsInsightsQuery-js&template=customWidgets/customWidgetLogsInsightsQuery-js.yaml&param_DoCreateExampleDashboard=Yes) – 运行和编辑 CloudWatch Logs Insights 查询。
+ [运行 Amazon Athena 查询](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetAthenaQuery-js&template=customWidgets/customWidgetAthenaQuery-js.yaml&param_DoCreateExampleDashboard=Yes) – 运行和编辑 Athena 查询。
+ [调用 AWS API](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetAwsCall-js&template=customWidgets/customWidgetAwsCall-js.yaml&param_DoCreateExampleDashboard=Yes) – 调用任何只读 AWS API 并以 JSON 格式显示结果。
+ [快速 CloudWatch 位图图表](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetCloudWatchBitmapGraph-js&template=customWidgets/customWidgetCloudWatchBitmapGraph-js.yaml&param_DoCreateExampleDashboard=Yes) – 在服务器端使用渲染 CloudWatch 图表，以便快速显示。
+ [CloudWatch 控制面板中的文本小组件](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetIncludeTextWidget-js&template=customWidgets/customWidgetIncludeTextWidget-js.yaml&param_DoCreateExampleDashboard=Yes) – 显示指定 CloudWatch 控制面板中的第一个文本小组件。
+ [CloudWatch 指标数据作为表](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetCloudWatchMetricDataTable-js&template=customWidgets/customWidgetCloudWatchMetricDataTable-js.yaml&param_DoCreateExampleDashboard=Yes) – 在表中显示原始 CloudWatch 指标数据。
+ [Amazon EC2 表](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetEc2Table-js&template=customWidgets/customWidgetEc2Table-js.yaml&param_DoCreateExampleDashboard=Yes) – 按 CPU 使用率显示排名靠前的 EC2 实例。此小组件还包括一个重启按钮，该按钮默认处于禁用状态。
+ [AWS CodeDeploy 部署](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetCodeDeploy-js&template=customWidgets/customWidgetCodeDeploy-js.yaml&param_DoCreateExampleDashboard=Yes) – 显示 CodeDeploy 部署。
+ [AWS Cost Explorer 报告](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetCostExplorerReport-js&template=customWidgets/customWidgetCostExplorerReport-js.yaml&param_DoCreateExampleDashboard=Yes) – 显示选定时间范围内每项 AWS 服务的成本报告。
+ [显示外部 URL 的内容](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetFetchURL-js&template=customWidgets/customWidgetFetchURL-js.yaml&param_DoCreateExampleDashboard=Yes) – 显示可从外部访问的 URL 的内容。
+ [显示 Amazon S3 对象](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetS3GetObject-js&template=customWidgets/customWidgetS3GetObject-js.yaml&param_DoCreateExampleDashboard=Yes) – 显示您账户中 Amazon S3 存储桶中的对象。
+ [简单的 SVG 饼图](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetSimplePie-js&template=customWidgets/customWidgetSimplePie-js.yaml&param_DoCreateExampleDashboard=Yes) – 基于 SVG 的图表小组件示例。

------
#### [ Python ]

**Python 中的示例自定义小组件**
+ [Echo](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetEcho-py&template=customWidgets/customWidgetEcho-py.yaml&param_DoCreateExampleDashboard=Yes) – 一个基本的回显器，可用于测试 HTML 在自定义小组件中的显示方式，而无需编写新的小组件。
+ [ Hello world](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetHelloWorld-py&template=customWidgets/customWidgetHelloWorld-py.yaml&param_DoCreateExampleDashboard=Yes) – 一个非常基本的入门小组件。
+ [自定义小组件调试程序](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetDebugger-py&template=customWidgets/customWidgetDebugger-py.yaml&param_DoCreateExampleDashboard=Yes) – 一个调试程序小组件，会显示有关 Lambda 运行时环境的有用信息。
+ [调用 AWS API](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetAwsCall-py&template=customWidgets/customWidgetAwsCall-py.yaml&param_DoCreateExampleDashboard=Yes) – 调用任何只读 AWS API 并以 JSON 格式显示结果。
+  [快速 CloudWatch 位图图表](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetCloudWatchBitmapGraph-py&template=customWidgets/customWidgetCloudWatchBitmapGraph-py.yaml&param_DoCreateExampleDashboard=Yes) – 在服务器端使用渲染 CloudWatch 图表，以便快速显示。
+  [通过电子邮件发送控制面板快照](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetEmailDashboardSnapshot-py&template=customWidgets/customWidgetEmailDashboardSnapshot-py.yaml&param_DoCreateExampleDashboard=Yes) – 拍摄当前控制面板的快照，并将其发送给电子邮件收件人。
+  [向 Amazon S3 发送控制面板快照](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetSnapshotDashboardToS3-py&template=customWidgets/customWidgetSnapshotDashboardToS3-py.yaml&param_DoCreateExampleDashboard=Yes) – 拍摄当前控制面板的快照，并将其存储在 Amazon S3 中。
+ [CloudWatch 控制面板中的文本小组件](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetIncludeTextWidget-py&template=customWidgets/customWidgetIncludeTextWidget-py.yaml&param_DoCreateExampleDashboard=Yes) – 显示指定 CloudWatch 控制面板中的第一个文本小组件。
+ [显示外部 URL 的内容](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetFetchURL-py&template=customWidgets/customWidgetFetchURL-py.yaml&param_DoCreateExampleDashboard=Yes) – 显示可从外部访问的 URL 的内容。
+ [RSS 读取器](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetRssReader-py&template=customWidgets/customWidgetRssReader-py.yaml&param_DoCreateExampleDashboard=Yes) – 显示 RSS 馈送。
+ [显示 Amazon S3 对象](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetS3GetObject-py&template=customWidgets/customWidgetS3GetObject-py.yaml&param_DoCreateExampleDashboard=Yes) – 显示您账户中 Amazon S3 存储桶中的对象。
+ [简单的 SVG 饼图](https://console.aws.amazon.com/cloudwatch/cfn.js?region=us-east-1&action=create&stackName=customWidgetSimplePie-py&template=customWidgets/customWidgetSimplePie-py.yaml&param_DoCreateExampleDashboard=Yes) – 基于 SVG 的图表小组件示例。

------

**JavaScript 中的 Echo 小组件**

以下是 JavaScript 中的 Echo 示例小组件。

```
const DOCS = `
## Echo
A basic echo script. Anything passed in the \`\`\`echo\`\`\` parameter is returned as the content of the custom widget.
### Widget parameters
Param | Description
---|---
**echo** | The content to echo back
 
### Example parameters
\`\`\` yaml
echo: <h1>Hello world</h1>
\`\`\`
`;
 
exports.handler = async (event) => {
    if (event.describe) {
        return DOCS;   
    }
    
    let widgetContext = JSON.stringify(event.widgetContext, null, 4);
    widgetContext = widgetContext.replace(/</g, '&lt;');
    widgetContext = widgetContext.replace(/>/g, '&gt;');
    
    return `${event.echo || ''}<pre>${widgetContext}</pre>`;
};
```

**Python 中的 Echo 小组件**

以下是 Python 中的 Echo 示例小组件。

```
import json
     
DOCS = """
## Echo
A basic echo script. Anything passed in the ```echo``` parameter is returned as the content of the custom widget.
### Widget parameters
Param | Description
---|---
**echo** | The content to echo back
     
### Example parameters
``` yaml
echo: <h1>Hello world</h1>
```"""
 
def lambda_handler(event, context):
    if 'describe' in event:
        return DOCS
        
    echo = event.get('echo', '')
    widgetContext = event.get('widgetContext')
    widgetContext = json.dumps(widgetContext, indent=4)
    widgetContext = widgetContext.replace('<', '&lt;')
    widgetContext = widgetContext.replace('>', '&gt;')
        
    return f'{echo}<pre>{widgetContext}</pre>'
```

**Java 中的 Echo 小组件**

以下是 Java 中的 Echo 示例小组件。

```
package example;
 
import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;
 
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
 
public class Handler implements RequestHandler<Event, String>{
 
  static String DOCS = ""
    + "## Echo\n"
    + "A basic echo script. Anything passed in the ```echo``` parameter is returned as the content of the custom widget.\n"
    + "### Widget parameters\n"
    + "Param | Description\n"
    + "---|---\n"
    + "**echo** | The content to echo back\n\n"
    + "### Example parameters\n"
    + "```yaml\n"
    + "echo: <h1>Hello world</h1>\n"
    + "```\n";
 
  Gson gson = new GsonBuilder().setPrettyPrinting().create();
 
  @Override
  public String handleRequest(Event event, Context context) {
 
    if (event.describe) {
      return DOCS;
    }
     
    return (event.echo != null ? event.echo : "") + "<pre>" + gson.toJson(event.widgetContext) + "</pre>";
  }
}
     
class Event {
 
    public boolean describe;
    public String echo;
    public Object widgetContext;
 
    public Event() {}
 
    public Event(String echo, boolean describe, Object widgetContext) {
        this.describe = describe;
        this.echo = echo;
        this.widgetContext = widgetContext;
    }
}
```

# 将文本小组件添加到 CloudWatch 控制面板
添加文本小组件

**将文本小部件添加到控制面板**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 选择 **\$1** 符号。

1. 选择**文本**。

1. 对于 **Markdown**，使用 [Markdown](https://docs.aws.amazon.com/general/latest/gr/aws-markdown.html) 添加文本并设置格式，然后选择 **Create widget (创建小部件)**。

1. 要使文本小组件透明，请选择**透明背景**。

1. 选择 **Save dashboard**。

# 在 CloudWatch 控制面板上编辑文本小组件
编辑文本小组件

**在控制面板上编辑文本小部件**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 将鼠标指针悬停在文本块的右上角，然后选择 **Widget actions**（小组件操作）。然后选择 **Edit**（编辑）。

1. 根据需要更新文本，然后选择 **Update widget (更新小部件)**。

1. 选择 **Save dashboard**。

# 从 CloudWatch 控制面板删除文本小组件
删除文本小组件

**从控制面板中删除文本小部件**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 将鼠标指针悬停在文本块的右上角，然后选择 **Widget actions**（小组件操作）。然后选择 **Delete**(删除)。

1. 选择 **Save dashboard**。

# 将警报添加到 CloudWatch 控制面板
添加警报

**将单个告警（包括其图表）添加到控制面板**

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

1. 在导航窗格中，选择 **Alarms**，选择要添加的警报，然后选择 **Add to Dashboard**。

1. 选择控制面板，选择小部件类型 (**Line**、**Stacked area** 或 **Number**)，然后选择 **Add to dashboard**。

1. 要在控制面板上查看警报，请在导航窗格中选择 **Dashboards**，然后选择控制面板。

1. (可选) 要暂时放大警报图表，请选择该图表。

1. （可选）要更改小组件类型，请将鼠标指针悬停在图表标题上，选择**小组件操作**，然后选择**小组件类型**。

# 将警报状态小组件添加到 CloudWatch 控制面板
添加警报状态小组件

**将告警状态小组件添加到控制面板**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 选择 **\$1** 符号。

1. 选择 **Alarm status（告警状态）**。

1. 选择要向小组件添加的告警旁边的复选框，然后选择 **Create widget（创建小组件）**。

1. 选择 **Add to dashboard（添加到控制面板）**。

# 从 CloudWatch 控制面板删除警报小组件
删除提醒小组件

**从控制面板中删除告警小组件**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 将鼠标悬停在小组件上，选择**小组件操作**，然后选择**删除**。

1. 选择 **Save dashboard**。如果在保存更改之前尝试离开控制面板，将提示您保存或放弃更改。

# 使用 CloudWatch 控制面板中的数据表小组件
使用数据表小组件

**表属性**

数据表有一组默认的属性，这些属性无需对选项或源进行任何更改。这些属性包括粘性标签列、所有启用的摘要列、四舍五入的数据点，以及其转换的单位。

每个数据表小组件都可以具有以下属性。有关每个属性的信息包括了如何在控制面板的 JSON 源中对该属性进行配置。有关控制面板 JSON 的更多信息，请参阅 [Dashboard Body Structure and Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/CloudWatch-Dashboard-Body-Structure.html)。

**摘要**  
摘要列是数据表小组件中引入的新属性。这些列是当前表格摘要的特定子集。例如，**总计**摘要是其行中显示的所有数据点的总和。摘要列与 CloudWatch 统计数据不同。源代码表示为：  

```
 "table": {
        "summaryColumns": [
            "MIN",
            "MAX",
            "SUM",
            "AVG"
        ]
    },
```

**阈值**  
可通过其将阈值应用到表格中。当数据点处于阈值范围之内，其单元格将以阈值颜色突出显示。源代码表示为：  

```
"annotations": {
    "horizontal": [
        {
            "label": string,
            "value": int,
            "fill": "above" | "below"
        }
    ]
}
```

标签列中的单位  
要显示与指标关联的单位，您可以启用此选项以在标签旁边的标签列中显示相应单位。源代码表示为：  

```
"yAxis": {
    "left": {
        "showUnits": true | false
    }
}
```

**反转行和列**  
这将转换表格，使数据点从列变为行，而指标则从行变为列。源代码表示为：  

```
 "table": {
    "layout": "vertical" | "horizontal"
}
```

**粘性摘要列**  
这将使摘要列具有粘性，以便在其滚动时仍能显示。标签已经具有粘性。源代码表示为：  

```
"table": {
    "stickySummary": true | false
}
```

**仅显示摘要列**  
这将使数据点列不显示，而是只显示标签列和摘要列。源代码表示为：  

```
 "table": {
    "showTimeSeriesData": false | true
}
```

**实时数据**  
显示最新的数据点，即使其尚未完全聚合。源代码表示为：  

```
"liveData": true | false
```

**数字小组件格式**  
在四舍五入和转换之前，尽可能多地显示单元格中可容纳的数字。源代码表示为：  

```
"singleValueFullPrecision": true | false
```

# 将数据表小组件添加到 CloudWatch 控制面板
添加数据表小组件

**将数据表小组件添加到控制面板**

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

1. 在导航窗格中，选择**控制面板**，然后选择一个控制面板。

1. 选择 **\$1** 按钮，选择**数据表**，然后选择**下一步**。

1. 在**浏览**选项卡中，搜索或浏览要在表格小组件中显示的指标。然后选择指标。

1. （可选）要更改表的布局，请选择**选项**选项卡，然后选择**反转行和列**。

   您也可以通过**选项**选项卡更改表中显示的列，并显示**标签**列中使用的单位。
**提示**  
要显示更准确的阈值，请选择 **Show as many digits as can fit before rounding**。

1. （可选）要更改数据表小组件的时间范围，请在小组件的上部区域中选择一个预定义的时间范围。时间范围从 1 小时到 1 周不等。要设置自己的时间范围，请选择 **Custom**（自定义）。

1. （可选）要更改数据表小组件的时间范围，请在小组件的上部区域中选择一个预定义的时间范围。时间范围从 1 小时到 1 周不等。要设置自己的时间范围，请选择 **Custom**（自定义）。

1. （可选）要让此小组件继续使用您选择的该时间范围（即使控制面板其余部分的时间范围稍后会发生更改时也是如此），请选择**保持时间范围**。

1. 选择**创建小组件**，然后选择**保存控制面板**。

# 从 CloudWatch 控制面板删除数据表小组件
删除数据表小组件

**从控制面板删除数据表小组件**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 在要删除的小组件的右上角，选择**小组件操作**，然后选择**删除**。

1. 选择 **Save dashboard**。

# 在 CloudWatch 控制面板上链接图表
链接图表

在 CloudWatch 控制面板上链接图表，以便更改及时反映在所有图表上。

**在控制面板上链接图表**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 选择**操作**，然后选择**链接图表**。

# 在 CloudWatch 控制面板上取消链接图表
取消链接图表

**在控制面板上取消链接图表**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 清除**操作**，然后清除**链接图表**。

# 共享 CloudWatch 控制面板
共享控制面板

您可以与无法直接访问您 AWS 账户的人员共享 CloudWatch 控制面板。这使您能够跨团队、与利益攸关方以及企业外部人员共享控制面板。您甚至可以在团队区域的大屏幕上显示控制面板，或将控制面板嵌入到 Wiki 和其他网页中。

**警告**  
向与您共享控制面板的所有人员授予该账户中 [授予与您共享控制面板的人员的权限](#share-cloudwatch-dashboard-iamrole) 列出的权限。如果您公开共享控制面板，则拥有控制面板链接的所有人均具有这些权限。  
`cloudwatch:GetMetricData` 和 `ec2:DescribeTags` 权限范围不能缩小到特定指标或 EC2 实例，因此具有控制面板访问权限的人员可以查询所有 CloudWatch 指标以及账户中所有 EC2 实例的名称和标签。

共享控制面板时，您可以通过三种方式指定谁可以查看控制面板：
+ 共享单个控制面板并指定最多五个可查看控制面板的人员的电子邮件地址。这些用户中的每个用户都会创建自己的密码，他们必须输入该密码才能查看控制面板。
+ 公开共享单个控制面板，以便拥有该链接的任何人都可以查看控制面板。
+ 共享您账户中的所有 CloudWatch 控制面板，并指定第三方单点登录 (SSO) 提供商进行控制面板访问。属于此 SSO 提供商列表成员的所有用户均可访问该账户中的所有控制面板。要启用此功能，请将 SSO 提供商与 Amazon Cognito 集成。SSO 提供商必须支持安全断言标记语言 (SAML)。有关 Amazon Cognito 的更多信息，请参阅[什么是 Amazon Cognito？](https://docs.aws.amazon.com/cognito/latest/developerguide/what-is-amazon-cognito.html)

共享控制面板不会产生费用，但共享控制面板内的小组件将按标准的 CloudWatch 费率收费。有关 CloudWatch 定价的信息，请参阅 [Amazon CloudWatch 定价](https://aws.amazon.com/cloudwatch/pricing/)。

当您共享控制面板时，系统会在美国东部（弗吉尼亚州北部）区域创建 Amazon Cognito 资源。

**重要**  
请勿修改控制面板共享过程创建的资源名称和标识符。这包括 Amazon Cognito 和 IAM 资源。修改这些资源可能会导致共享控制面板出现意外和不正确的功能。

**注意**  
如果您共享的控制面板中有带警报注释的指标小组件，共享该控制面板的人员将不会看到这些小组件。相反，他们会看到一个空白的小组件，以及说明该小组件不可用的文字。当您自行查看控制面板时，依然可以看到带有警报注释的指标小组件。

## 共享控制面板所需的权限


为了能够使用以下任一方法来共享控制面板并查看已共享哪些控制面板，您必须以用户身份或使用具有特定权限的 IAM 角色进行登录。

为了能够共享控制面板，您的用户或 IAM 角色必须包含以下策略语句中包含的权限：

```
{
    "Effect": "Allow",
    "Action": [
        "iam:CreateRole",
        "iam:CreatePolicy",
        "iam:AttachRolePolicy",
        "iam:PassRole"
    ],
    "Resource": [
        "arn:aws:iam::*:role/service-role/CWDBSharing*",
        "arn:aws:iam::*:policy/*"
    ]
},
{
    "Effect": "Allow",
    "Action": [
        "cognito-idp:*",
        "cognito-identity:*",
    ],
    "Resource": [
        "*"
    ]
},
{
    "Effect": "Allow",
    "Action": [
        "cloudwatch:GetDashboard",
    ],
    "Resource": [
        "*"
        // or the ARNs of dashboards that you want to share
    ]
}
```

为了能够查看已共享的控制面板但无法共享控制面板，用户或 IAM 角色可以包含类似于以下内容的策略语句：

```
{
    "Effect": "Allow",
    "Action": [
        "cognito-idp:*",
        "cognito-identity:*"
    ],
    "Resource": [
        "*"
    ]
},
{
    "Effect": "Allow",
    "Action": [
        "cloudwatch:ListDashboards",
    ],
    "Resource": [
        "*" 
    ]
}
```

## 授予与您共享控制面板的人员的权限


当您共享控制面板时，CloudWatch 会在账户中创建一个 IAM 角色，该角色会向与您共享控制面板的人员授予以下权限：
+ `cloudwatch:GetInsightRuleReport`
+ `cloudwatch:GetMetricData`
+ `cloudwatch:DescribeAlarms`
+ `ec2:DescribeTags`

**警告**  
向与您共享控制面板的所有人员授予该账户的这些权限。如果您公开共享控制面板，则拥有控制面板链接的所有人均具有这些权限。  
`cloudwatch:GetMetricData` 和 `ec2:DescribeTags` 权限范围不能缩小到特定指标或 EC2 实例，因此具有控制面板访问权限的人员可以查询所有 CloudWatch 指标以及账户中所有 EC2 实例的名称和标签。

共享控制面板时，默认情况下，CloudWatch 创建的权限仅限制对共享控制面板上的告警和 Contributor Insights 规则的访问。如果您向控制面板添加新告警或 Contributor Insights 规则，并希望与您共享控制面板的人员也能查看，则必须更新策略以允许这些资源。

# 与特定用户共享 CloudWatch 控制面板
与特定用户共享一个控制面板

使用本节中的步骤，以便与您选择的最多五个电子邮件地址共享控制面板。

**注意**  
默认情况下，控制面板上的任何 CloudWatch Logs 小组件对与您共享控制面板的人员均不可见。有关更多信息，请参阅 [允许与您共享的人员查看日志表小组件](cloudwatch-dashboard-sharing.md#share-cloudwatch-dashboard-logwidget)。  
默认情况下，控制面板上的任何复合告警小组件对与您共享控制面板的人员均不可见。有关更多信息，请参阅 [允许与您共享的人员查看复合告警](cloudwatch-dashboard-sharing.md#share-cloudwatch-dashboard-composite-alarms)。

**与特定用户共享控制面板**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择控制面板的名称。

1. 依次选择 **Actions（操作）**、**Share dashboard（共享控制面板）**。

1. 在 **Share your dashboard and require a username and password（共享您的控制面板且需要用户名和密码）**旁边，选择 **Start sharing（开始共享）**。

1. 在 **Add email addresses（添加电子邮件地址）**下，输入要与其共享控制面板的电子邮件地址。您可以包含最多五个电子邮件地址。

1. 输入所有电子邮件地址后，阅读协议并选择确认框。然后，选择 **Preview policy（预览策略）**。

1. 确认将要共享的资源是您想要的，然后选择 **Confirm and generate shareable link（确认并生成可共享的链接）**。

1. 在下一页上，选择 **Copy link to clipboard（将链接复制到剪贴板）**。然后，您可以将此链接粘贴到电子邮件中并将其发送给受邀用户。他们会自动收到一封带有用户名和临时密码的单独电子邮件，用于连接到控制面板。

# 公开共享 CloudWatch 控制面板
公开共享控制面板

按照本节中的步骤公开共享控制面板。这十分有利于在团队会议室的大屏幕上显示控制面板或嵌入 Wiki 页面。

**重要**  
公开共享控制面板使得拥有该链接的任何人都可以访问该控制面板，而无需身份验证。仅对不包含敏感信息的控制面板执行此操作。

**注意**  
默认情况下，控制面板上的任何 CloudWatch Logs 小组件对与您共享控制面板的人员均不可见。有关更多信息，请参阅 [允许与您共享的人员查看日志表小组件](cloudwatch-dashboard-sharing.md#share-cloudwatch-dashboard-logwidget)。  
默认情况下，控制面板上的任何复合告警小组件对与您共享控制面板的人员均不可见。有关更多信息，请参阅 [允许与您共享的人员查看复合告警](cloudwatch-dashboard-sharing.md#share-cloudwatch-dashboard-composite-alarms)。

**公开共享控制面板**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择控制面板的名称。

1. 依次选择 **Actions（操作）**、**Share dashboard（共享控制面板）**。

1. 在 **Share your dashboard publicly（公开共享您的控制面板）**旁，选择 **Start sharing（开始共享）**。

1. 在文本框中输入 **Confirm**。

1. 阅读协议并选择确认框。然后，选择 **Preview policy（预览策略）**。

1. 确认将要共享的资源是您想要的，然后选择 **Confirm and generate shareable link（确认并生成可共享的链接）**。

1. 在下一页上，选择 **Copy link to clipboard（将链接复制到剪贴板）**。然后，您可以共享此链接。与您共享链接的任何人都可以访问控制面板，而无需提供凭证。

# 使用 SSO 共享账户中的所有 CloudWatch 控制面板
使用 SSO 共享所有控制面板

使用本节中的步骤，通过单点登录 (SSO) 与用户共享您账户中的所有控制面板。

**注意**  
默认情况下，控制面板上的任何 CloudWatch Logs 小组件对与您共享控制面板的人员均不可见。有关更多信息，请参阅 [允许与您共享的人员查看日志表小组件](cloudwatch-dashboard-sharing.md#share-cloudwatch-dashboard-logwidget)。  
默认情况下，控制面板上的任何复合告警小组件对与您共享控制面板的人员均不可见。有关更多信息，请参阅 [允许与您共享的人员查看复合告警](cloudwatch-dashboard-sharing.md#share-cloudwatch-dashboard-composite-alarms)。

**与 SSO 提供商列表中的用户共享您的 CloudWatch 控制面板**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择控制面板的名称。

1. 依次选择 **Actions（操作）**、**Share dashboard（共享控制面板）**。

1. 选择 **Go to CloudWatch Settings（转到 CloudWatch 设置）**。

1. 如果您需要的 SSO 提供商未在 **Available SSO providers（可用 SSO 提供商）**中列出，请选择 **Manage SSO providers（管理 SSO 提供商）**并按照 [为 CloudWatch 控制面板共享设置 SSO](share-cloudwatch-dashboards-setup-SSO.md) 中的说明进行操作。

   然后返回到 CloudWatch 控制台并刷新浏览器。您启用的 SSO 提供商现在应显示在列表中。

1. 在 **Available SSO providers（可用 SSO 提供商）**列表中选择所需的 SSO 提供商。

1. 选择**保存更改**。

# 为 CloudWatch 控制面板共享设置 SSO
设置 SSO

若要通过支持 SAML 的第三方单点登录提供商设置控制面板共享，请按照下列步骤操作。

**重要**  
我们强烈建议您不要使用非 SAML SSO 提供商共享控制面板。这样操作会导致无意中允许第三方访问您账户的控制面板的风险。

**设置 SSO 提供商以启用控制面板共享**

1. 将 SSO 提供商与 Amazon Cognito 集成。有关更多信息，请参阅[将第三方 SAML 身份提供商与 Amazon Cognito 用户池集成](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-integrating-3rd-party-saml-providers.html)。

1. 从 SSO 提供商下载元数据 XML 文件。

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

1. 在导航窗格中，选择**设置**。

1. 在 **Dashboard sharing（控制面板共享）**部分中，选择 **Configure（配置）**。

1. 选择 **Manage SSO providers（管理 SSO 提供商）**。

   此操作会在美国东部（弗吉尼亚北部）区域 (us-east-1) 中打开 Amazon Cognito 控制台。如果您没有看到任何 **User Pools（用户池）**，则 Amazon Cognito 控制台可能已在其他区域中打开。如果是，请将区域更改为 **US East (N. Virginia) us-east-1（美国东部（弗吉尼亚北部）us-east-1）**，然后继续执行后续步骤。

1. 选择 **CloudWatchDashboardSharing** 池。

1. 在导航窗格中，选择**社交提供者和外部提供者**。

1. 选择**添加身份提供者**。

1. 选择 **SAML**。

1. 在 **Provider name（提供商名称）**中输入您的 SSO 提供商的名称。

1. 选择**选择文件**，然后选择您在步骤 2 中下载的元数据 XML 文件。

1. 选择 **Create provider**（创建提供商）。

# 查看已共享的 CloudWatch 控制面板的数量
查看已共享的控制面板的数量

您可以使用 CloudWatch 控制台查看当前正在与其他人共享的 CloudWatch 控制面板的数量。

**查看正在共享的控制面板的数量**

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

1. 在导航窗格中，选择**设置**。

1. **Dashboard sharing（共享控制面板）**部分会显示共享的控制面板的数量。

1. 要查看共享的控制面板，请选择 **Username and password（用户名和密码）**和 **Public dashboards（公有控制面板）**下的 ***number* dashboards shared（共享控制面板数量）**。

# 查看您的哪些 CloudWatch 控制面板已共享
查看哪些控制面板已共享

您可以使用 CloudWatch 控制台查看您的哪些控制面板当前正在与其他人共享。

**查看正在共享哪些控制面板**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 在控制面板列表中，请参阅 **Share（共享）**列。包含此列中图标的控制面板当前正在共享。

1. 要查看与哪些用户共享控制面板，请选择控制面板名称，然后依次选择 **Actions（操作）**、**Share dashboard（共享控制面板）**。

   **Share dashboard（共享控制面板）*dashboard name（控制面板名称）***页面会显示控制面板的共享方式。如果需要，可以通过选择 **Stop sharing（停止共享）**，停止共享控制面板。

# 停止共享一个或多个 CloudWatch 控制面板
停止控制面板共享

您可以停止共享单个共享控制面板，或一次性停止共享所有共享控制面板。

**停止共享单个控制面板**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择共享控制面板的名称。

1. 依次选择 **Actions（操作）**、**Share dashboard（共享控制面板）**。

1. 选择 **Stop sharing（停止共享）**。

1. 在确认框中，选择 **Stop sharing（停止共享）**。

**停止共享所有的共享控制面板**

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

1. 在导航窗格中，选择**设置**。

1. 在 **Dashboard sharing（控制面板共享）**部分中，选择 **Stop sharing all dashboards（停止共享所有控制面板）**。

1. 在确认框中，选择 **Stop sharing all dashboards（停止共享所有控制面板）**。

# 查看共享 CloudWatch 控制面板权限并更改权限范围
查看和更改共享控制面板权限

如果要查看共享控制面板用户的权限，或更改共享控制面板权限的范围，请按照本节中的步骤进行操作。

**查看共享控制面板的权限**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择共享控制面板的名称。

1. 依次选择 **Actions（操作）**、**Share dashboard（共享控制面板）**。

1. 在 **Resources（资源）**下，选择 **IAM Role（IAM 角色）**。

1. 在 IAM 控制台中，选择所显示的策略。

1. （可选）要限制共享控制面板用户可以查看哪些告警，请选择 **Edit policy（编辑策略）**并将 `cloudwatch:DescribeAlarms` 权限从其当前位置移动到一个新 `Allow` 语句，该语句仅列出您希望共享控制面板用户查看的告警的 ARN。请参阅以下示例。

   ```
   {
      "Effect": "Allow",
       "Action": "cloudwatch:DescribeAlarms",
       "Resource": [
           "AlarmARN1",
           "AlarmARN2"
       ]
   }
   ```

   如果您执行此操作，请务必从当前策略的如下部分中删除 `cloudwatch:DescribeAlarms` 权限：

   ```
   { 
      "Effect": "Allow",
       "Action": [
           "cloudwatch:GetInsightRuleReport",
           "cloudwatch:GetMetricData",
           "cloudwatch:DescribeAlarms",
           "ec2:DescribeTags"
       ],
       "Resource": "*"
   }
   ```

1. （可选）要限制共享控制面板用户可以查看的 Contributor Insights 规则的范围，请选择 **Edit policy（编辑策略）**将 `cloudwatch:GetInsightRuleReport` 从当前位置移动到一个新 `Allow` 语句，该语句仅列出您希望共享控制面板用户查看的 Contributor Insights 规则的 ARN。请参阅以下示例。

   ```
   {
      "Effect": "Allow",
       "Action": "cloudwatch:GetInsightRuleReport",
       "Resource": [
           "PublicContributorInsightsRuleARN1",
           "PublicContributorInsightsRuleARN2"
       ]
   }
   ```

   如果您执行此操作，请务必从当前策略的如下部分中删除 `cloudwatch:GetInsightRuleReport`：

   ```
   {
               "Effect": "Allow",
               "Action": [
                   "cloudwatch:GetInsightRuleReport",
                   "cloudwatch:GetMetricData",
                   "cloudwatch:DescribeAlarms",
                   "ec2:DescribeTags"
               ],
               "Resource": "*"
           }
   ```

## 允许与您共享的人员查看复合告警


在共享控制面板时，默认情况下，控制面板上的复合告警小组件对与您共享控制面板的人员不可见。要使复合告警小组件可见，您需要向控制面板共享策略添加 `DescribeAlarms: *` 权限。该权限如下所示：

```
{
    "Effect": "Allow",
    "Action": "cloudwatch:DescribeAlarms",
    "Resource": "*"
}
```

**警告**  
上述策略语句允许访问账户中的所有告警。要缩小 `cloudwatch:DescribeAlarms` 的范围，您必须使用 `Deny` 语句。您可以向策略添加一个 `Deny` 语句，并指定要锁定的告警的 ARN。该拒绝语句应类似于以下内容：  

```
{
    "Effect": "Allow",
    "Action": "cloudwatch:DescribeAlarms",
    "Resource": "*"
},
{   
    "Effect": "Deny",
    "Action": "cloudwatch:DescribeAlarms",
    "Resource": [
        "SensitiveAlarm1ARN",
        "SensitiveAlarm1ARN"
    ]
}
```

## 允许与您共享的人员查看日志表小组件


在共享控制面板时，默认情况下，控制面板上的 CloudWatch Logs Insights 小组件对与您共享控制面板的人员不可见。这会影响现存的 CloudWatch Logs Insights 小组件以及在共享该小组件后添加到控制面板的任何小组件。

如果您希望这些人员能够查看 CloudWatch Logs 小组件，则必须向 IAM 角色添加权限以进行控制面板共享。

**允许与您共享控制面板的人员查看 CloudWatch Logs 小组件**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择共享控制面板的名称。

1. 依次选择 **Actions（操作）**、**Share dashboard（共享控制面板）**。

1. 在 **Resources（资源）**下，选择 **IAM Role（IAM 角色）**。

1. 在 IAM 控制台中，选择所显示的策略。

1. 选择 **Edit policy（编辑策略）**并添加以下语句。在新语句中，我们建议您仅指定要共享的日志组的 ARN。请参阅以下示例。

   ```
   {
               "Effect": "Allow",
               "Action": [
                   "logs:FilterLogEvents",
                   "logs:StartQuery",
                   "logs:StopQuery",
                   "logs:GetLogRecord",
                   "logs:GetQueryResults",
                   "logs:DescribeLogGroups"
               ],
               "Resource": [
                   "SharedLogGroup1ARN",
                   "SharedLogGroup2ARN"
              ]
           },
   ```

1. 选择**保存更改**。

如果您的控制面板共享 IAM policy 已包含带 `*` 的五个权限作为资源，我们强烈建议您更改策略并仅指定您想要共享的日志组的 ARN。例如，如果这些权限的 `Resource` 部分如下所示：

```
"Resource": "*"
```

更改策略以仅指定要共享的日志组的 ARN，如下例所示：

```
"Resource": [
  "SharedLogGroup1ARN",
  "SharedLogGroup2ARN"
]
```

## 允许与您共享的人员查看自定义小组件


当您共享控制面板时，默认情况下控制面板上的自定义小组件对与您共享控制面板的人员不可见。这既会影响现存的自定义小组件，也会影响共享后添加到控制面板的任何自定义小组件。

如果您希望这些人员能够查看自定义小组件，您必须向 IAM 角色添加权限以进行控制面板共享。

**允许与您共享控制面板的人员查看自定义小组件**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择共享控制面板的名称。

1. 依次选择 **Actions（操作）**、**Share dashboard（共享控制面板）**。

1. 在 **Resources（资源）**下，选择 **IAM Role（IAM 角色）**。

1. 在 IAM 控制台中，选择所显示的策略。

1. 选择 **Edit policy（编辑策略）**并添加以下语句。在新语句中，我们建议您仅指定要共享的 Lambda 函数的 ARN。请参阅以下示例。

   ```
   {
     "Sid": "Invoke",
     "Effect": "Allow",
     "Action": [
         "lambda:InvokeFunction"
     ],
     "Resource": [
       "LambdaFunction1ARN",
       "LambdaFunction2ARN"
     ]
    }
   ```

1. 选择**保存更改**。

如果您的控制面板共享 IAM policy 已包含带 `*` 的权限作为资源，我们强烈建议您更改策略并仅指定要共享的 Lambda 函数的 ARN。例如，如果这些权限的 `Resource` 部分如下所示：

```
"Resource": "*"
```

更改策略以仅指定要共享的自定义小组件的 ARN，如以下示例所示：

```
"Resource": [
  "LambdaFunction1ARN",
  "LambdaFunction2ARN"
]
```

# 使用 CloudWatch 控制面板中的实时数据
使用实时数据

您可以选择指标小部件是否显示*实时数据*。实时数据是将在最后一分钟内发布的，尚未完全聚合的数据。
+ 如果**关闭**实时数据，则仅显示过去至少一分钟的聚合期的数据点。例如，如果使用 5 分钟聚合期，12:35 的数据点将从 12:35 聚合到 12:40，并在 12:41 时显示。
+ 如果**启用**实时数据，则在相应聚合间隔内发布任何数据后，立即显示最新数据点。每次刷新显示时，最新数据点都可能会随着该聚合期内的新数据发布而发生变化。如果您使用累积统计数据（例如**总和**或**样本数**），则使用实时数据可能会导致图形末尾出现下滑。

您可以选择为整个控制面板启用实时数据，也可以为控制面板上的单个小部件启用实时数据。

# 使用 CloudWatch 控制面板的实时数据
使用控制面板的实时数据

**选择是否在整个控制面板上使用实时数据**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 要永久打开或关闭控制面板上所有小组件的实时数据，请执行以下操作：

   1. 选择 **Actions (操作)**、**Settings (设置)**、**Bulk update live data (批量更新实时数据)**。

   1. 选择**实时数据打开** 或**实时数据关闭**，然后选择**设置**。

1. 要临时覆盖每个小组件的实时数据设置，请选择 **Actions（操作）**。然后，在 **Overrides（覆盖）**下的 **Live data（实时数据）**旁边，请执行以下任一操作：
   + 选择 **On (打开)** 可临时为所有小部件启用实时数据。
   + 选择 **OFF (关闭)** 可临时关闭所有小组件的实时数据。
   + 选择 **Do not override (不覆盖)** 可保留每个小部件的实时数据设置。

# 使用 CloudWatch 控制面板小组件的实时数据
使用小组件的实时数据

**选择是否在单个小部件上使用实时数据**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 选择小部件，然后选择 **Actions (操作)**、**Edit (编辑)**。

1. 选择 **Graph options (图形选项)** 选项卡。

1. 选中或清除 **Live Data (实时数据)** 下的复选框。

# 查看动画 CloudWatch 控制面板
查看动画控制面板

您可以查看动画控制面板，该控制面板可回放随时间变化而捕获的 CloudWatch 指标数据。这可以帮助您在问题发生后查看趋势、进行演示或分析问题。

控制面板中的动画小组件包括折线小组件、堆叠面积小组件、数字小组件和 Metrics Explorer 小组件。饼图、条形图、文本小组件和日志小组件会显示在控制面板中，而不会以动画形式显示。

**查看动画控制面板**

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

1. 在导航窗格中，选择 **Dashboards（控制面板）**。

1. 选择控制面板的名称。

1. 选择 **Actions（操作）**、**Replay dashboard（回放控制面板）**。

1. （可选）默认情况下，启动动画时，动画会显示为滑动窗口。如果您希望动画显示为逐点动画，请在动画暂停时选择放大镜图标并重置缩放。

1. 要开启动画，请选择“Play（播放）”按钮。您还可以选择后退和前进按钮以移动到其他时间点。

1. （可选）要更改动画的时间窗口，请选择日历然后选择时间段。

1. 要更改动画的速度，请选择 **Auto speed（自动速度）**，然后选择新速度。

1. 在完成后，选择 **Exit animate（退出动画）**。

# 将 CloudWatch 控制面板添加到收藏夹列表
将控制面板添加到收藏夹列表

 在 CloudWatch 控制台中，您可以将控制面板、警报和日志组添加到收藏夹列表。您可以从导航窗格访问收藏夹列表。以下程序描述如何将控制面板添加到收藏夹列表。

**将控制面板添加到收藏夹列表**

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

1.  在导航窗格中，选择 **Dashboards（控制面板）**。

1.  在控制面板列表中，选择您想要收藏的控制面板名称旁边的星号。

   1.  （可选）您还可以通过在列表中选择控制面板，然后选择控制面板名称旁边的星号，收藏某个控制面板。

1.  要访问收藏夹列表，请在导航窗格中选择 **Favorites and recents**（收藏夹和最近记录）。菜单中有两个列。一列包含您收藏的控制面板、警报和日志组，另一列包含您最近访问过的控制面板、警报和日志组。

**提示**  
 在 CloudWatch 控制台导航窗格中，您可以通过 ***Favorites and recents***（收藏夹和最近记录）菜单收藏控制面板，以及警报和日志组。在 ***Recently visited***（最近访问）列中，将鼠标悬停在您想要收藏的控制面板上，然后选择旁边的星号。

# 更改 CloudWatch 控制面板的时间段覆盖设置或刷新间隔
更改时间段覆盖设置或刷新间隔

您可以指定如何保留或修改添加到此控制面板的图表的时间段设置。

将自动时间段或持久时间范围应用于小组件时，图表的总体时间范围可能会影响您设置的时间段。
+ 如果时间范围为一天或更短，则不会更改时间段设置。
+ 如果时间范围介于 1 天到 3 天，则设置为低于 5 分钟的时间段将更改为 5 分钟。
+ 如果时间范围超过 3 天，则设置为低于 1 小时的时间段将更改为 1 小时。

以下步骤介绍了如何使用控制台更改时段覆盖选项。您也可以使用控制面板 JSON 结构中的 `periodOverride` 字段来更改这些选项。有关更多信息，请参阅 [Dashboard Body Overall Structure](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/CloudWatch-Dashboard-Body-Structure.html#Dashboard-Body-Overall-Structure)。

**更改时间段覆盖选项**

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

1. 选择**操作**。

1. 在 **Period override (时间段覆盖)** 下，选择以下选项之一：
   + 选择 **Auto (自动)**，让每个图表上的指标时间段自动适应控制面板的时间范围。
   + 选择 **Do not override (不要覆盖)** 以确保始终遵循每个图表的时间段设置。
   + 选择其他选项之一将导致添加到控制面板的图表始终适应该所选时间作为其时间段设置。

   当关闭控制面板或刷新浏览器后，**Period override (时间段覆盖)** 始终会还原为 **Auto (自动)**。无法保存不同的**时间段覆盖**设置。

您可以更改 CloudWatch 控制面板上的数据刷新频率。

**更改控制面板刷新间隔**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 在**刷新选项**菜单（右上角）上，选择 **10 秒**、**1 分钟**、**2 分钟**、**5 分钟**或 **15 分钟**。

# 更改 CloudWatch 控制面板的时间范围或时区格式
更改时间范围或时区格式

可以更改时间范围以显示几分钟、几小时、几天或几周的控制面板数据。您还可以更改时区格式以按 UTC 或本地时间格式显示控制面板数据。本地时间按计算机操作系统中指定的时区显示。

**注意**  
如果您创建的控制面板中的图表包含了 100 个或更多的高精度指标，我们建议您不要设置超过 1 小时的时间范围。有关更多信息，请参阅 [高精度指标](publishingMetrics.md#high-resolution-metrics)。

**注意**  
如果控制面板的时间范围短于其上用于小组件的时间段，则会发生以下情况：  
 小组件会被修改以显示该小组件的一个完整时间段对应的数据量，即使该时间段长于控制面板时间范围，也是如此。这样可以确保图表上至少有一个数据点。
 该数据点时间段的开始时间会被向后调整，以确保至少可以显示一个数据点。

------
#### [ New console ]

**更改控制面板时间范围**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  在控制面板屏幕中，执行以下任一操作：
   + 在仪表板的上部区域中，选择一个预定义的时间范围。这些时间从 1 小时到 1 周（**1h**（1 小时）、**3h**（3 小时）、**12h**（12 小时）、**1d**（1 天）或者 **1w**（1 周））。
   + 或者，您可以选择以下自定义时间范围选项之一：
     + 选择 **Custom**（自定义），然后选择 **Relative**（相对）选项卡。选择 1 分钟到 15 个月的时间范围。
     + 选择 **Custom**（自定义），然后选择 **Absolute**（绝对）选项卡。使用日历或文本字段指定时间范围。

**提示**  
如果在聚合期设置为 **Auto**（自动）时更改图表的时间范围，则 CloudWatch 可能会更改时间段。要手动设置时间段，请选择 **Actions**（操作）下拉菜单，然后选择 **Period override**（时间段覆盖）。

**更改控制面板时区格式**

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

1.  在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 在仪表板的上部区域中，选择**自定义**。

1. 在显示的框的右上角，从下拉菜单中选择 **UTC**（协调世界时）或 **Local time**（本地时间）。

1.  选择**应用**。

------
#### [ Old console ]

**更改控制面板时间范围**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1.  在控制面板屏幕中，执行以下任一操作：
   + 在仪表板的上部区域中，选择一个预定义的时间范围。这些时间从 1 小时到 1 周（**1h**（1 小时）、**3h**（3 小时）、**12h**（12 小时）、**1d**（1 天）、**3d**（3 天）或者 **1w**（1 周））。
   + 或者，您可以选择以下自定义时间范围选项之一：
     + 选择 **custom**（自定义）下拉菜单，然后选择 **Relative**（相对）选项卡。选择某个预定义的范围，其跨度从 1 分钟到 15 个月。
     + 选择 **custom**（自定义）下拉菜单，然后选择 **Absolute**（绝对）选项卡。使用日历或文本字段指定时间范围。

**提示**  
如果在聚合期设置为 **Auto**（自动）时更改图表的时间范围，则 CloudWatch 可能会更改时间段。要手动设置时间段，请选择 **Actions**（操作）下拉菜单，然后选择 **Period override**（时间段覆盖）。

**更改控制面板时区格式**

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

1. 在导航窗格中，选择 **Dashboards**（控制面板），然后选择一个控制面板。

1. 在控制面板屏幕的右上角，选择 **Custom**（自定义）下拉菜单。

1. 在显示的框的右上角，从下拉菜单中选择 **UTC**（协调世界时）或 **Local timezone**（本地时区）。

------