可以向 CloudWatch 和 CloudWatch Evidently 发送的自定义指标和扩展指标 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

可以向 CloudWatch 和 CloudWatch Evidently 发送的自定义指标和扩展指标

默认情况下,RUM 应用程序监视器会向 CloudWatch 发送指标。这些默认指标和维度列在可以使用 CloudWatch RUM 收集的 CloudWatch 指标中。

您还可以设置应用程序监控器,将扩展指标、自定义指标或两者同时发送到 CloudWatch 或 CloudWatch Evidently。

  • 自定义指标 – 自定义指标是由您定义的指标。有了自定义指标,您可以使用任何指标名称和命名空间。要派生指标,您可以使用任何自定义事件、内置事件、自定义属性或默认属性。

    您可以向 CloudWatch 或 CloudWatch Evidently 发送扩展指标。

  • 扩展指标 – 允许您向 CloudWatch Evidently 发送默认 CloudWatch RUM 指标,以用于 Evidently 实验。您还可以将任何默认的 CloudWatch RUM 指标发送给具有其他维度的 CloudWatch。这样,这些指标可以为您提供更精细的视图。

自定义指标

要发送自定义指标,您必须使用 Amazon API 或 Amazon CLI 而不是控制台。有关使用 Amazon API 的信息,请参阅 PutRumMetricsDestinationBatchCreateRumMetricDefinitions

一个目标可以包含的扩展指标定义和自定义指标定义的最大数量是 2000。对于您发送到每个目标的每个扩展指标,维度名称和维度值的每个组合都计入此限制。这也算作定价的 CloudWatch 自定义指标。

以下示例演示了如何创建从自定义事件派生的自定义指标。以下是使用的自定义事件示例:

cwr('recordEvent', { type: 'my_custom_event', data: { location: 'IAD', current_url: 'amazonaws.com', user_interaction: { interaction_1 : "click", interaction_2 : "scroll" }, visit_count:10 } })

根据此自定义事件,您可以创建一个自定义指标,用于计算 Chrome 浏览器访问该 amazonaws.com URL 的次数。以下定义在 RUM/CustomMetrics/PageVisits 命名空间中创建一个在您的账户中名为 AmazonVisitsCount 的指标。

{ "AppMonitorName":"customer-appMonitor-name", "Destination":"CloudWatch", "MetricDefinitions":[ { "Name":"AmazonVisitsCount", "Namespace":"PageVisit", "ValueKey":"event_details.visit_count", "UnitLabel":"Count", "DimensionKeys":{ "event_details.current_url": "URL" }, "EventPattern":"{\"metadata\":{\"browserName\":[\"Chrome\"]},\"event_type\":[\"my_custom_event\"],\"event_details\": {\"current_url\": [\"amazonaws.com\"]}}" } ] }

扩展指标

如果您设置了扩展指标,则可以执行以下一项或两项操作:

  • 向 CloudWatch Evidently 发送默认的 CloudWatch RUM 指标,以用于 Evidently 实验。只有 PerformanceNavigationDurationPerformanceResourceDurationWebVitalsCumulativeLayoutShiftWebVitalsFirstInputDelayWebVitalsLargestContentfulPaint 指标可以发送到 Evidently。

  • 将任何默认 CloudWatch RUM 指标发送到具有其他维度的 CloudWatch,以便这些指标为您提供更精细的视图。例如,您可以查看用户使用的特定浏览器特有的指标,或特定地理位置的用户的指标。

有关默认 CloudWatch RUM 指标的更多信息,请参阅 您可以使用 CloudWatch RUM 收集的 CloudWatch 指标

一个目标可以包含的扩展指标定义和自定义指标定义的最大数量是 2000。对于您发送到每个目标的每个扩展指标或自定义指标,维度名称和维度值的每个组合都算作此限制的扩展指标。这也算作定价的 CloudWatch 自定义指标。

向 CloudWatch 发送扩展指标时,您可以使用 CloudWatch RUM 控制台为它们创建 CloudWatch 告警。

扩展指标作为 CloudWatch 自定义指标收费。有关更多信息,请参阅Amazon CloudWatch 定价

对于应用程序监视器可以发送的所有指标名称,扩展指标支持以下维度。您可以使用 CloudWatch RUM 收集的 CloudWatch 指标 中列出了这些指标名称。

  • BrowserName

    维度值示例:ChromeFirefoxChrome Headless

  • CountryCode 使用 ISO-3166 格式,带有两个字母的代码。

    维度值示例:USJPDE

  • DeviceType

    维度值示例:desktopmobiletabletembedded

  • FileType

    维度值示例:ImageStylesheet

  • OSName

    维度值示例:LinuxWindows, iOSAndroid

  • PageId

使用控制台设置扩展指标

要使用控制台向 CloudWatch 发送扩展指标,请执行以下步骤。

要向 CloudWatch Evidently 发送扩展指标,您必须使用 Amazon API 或 Amazon CLI 而不是控制台。有关使用 Amazon API 向 CloudWatch 或 Evidently 发送扩展指标的信息,请参阅 PutRumMetricsDestinationBatchCreateRumMetricDefinitions

要使用控制台设置应用程序监视器并向 CloudWatch 发送 RUM 扩展指标
  1. 访问 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中,选择 Application SignalsRUM

  3. 选择 List view(列表视图),然后选择要发送指标的应用程序监视器名称。

  4. 选择 Configuration(配置)选项卡,然后选择 RUM extended metrics(RUM 扩展指标)。

  5. 选择 Send metrics(发送指标)。

  6. 选择一个或多个与其他维度一起发送的指标名称。

  7. 选择一个或多个因子用作这些指标的维度。当您做出选择时,您选择创建的扩展指标数量将显示在 Number of extended metrics(扩展指标数量)中。

    该数字的计算方法是将所选指标名称的数量乘以您创建的不同维度的数量。该数字表示您需要为多少自定义指标付费。有关 CloudWatch 定价的信息,请参阅 Amazon CloudWatch 定价

    1. 要发送以页面 ID 作为维度的指标,请选择 Browse for page ID(浏览页面 ID),然后选择要使用的页面 ID。

    2. 要发送以设备类型作为维度的指标,请选择 Desktop devices(桌面设备)或 Mobile and tablets(移动设备和平板电脑)。

    3. 要发送以操作系统作为维度的指标,请在 Operating system(操作系统)下选择一个或多个操作系统。

    4. 要发送以浏览器类型作为维度的指标,请在 Browsers(浏览器)下选择一个或多个浏览器。

    5. 要发送以地理位置作为维度的指标,请在 Locations(位置)下选择一个或多个位置。

      只有此应用程序监视器报告指标的位置才会出现在列表中供您选择。

  8. 完成选择后,选择 Send metrics(发送指标)。

  9. (可选)在 Extended metrics(扩展指标)列表中,如要创建监视其中一个指标的告警,请在该指标行中选择 Create alarm(创建告警)。

    有关 CloudWatch 告警的一般信息,请参阅 使用 Amazon CloudWatch 告警。有关为 CloudWatch RUM 扩展指标设置告警的教程,请参阅 教程:创建扩展指标并为其设置告警

停止发送扩展指标

使用控制台停止发送扩展指标
  1. 访问 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中,选择 Application SignalsRUM

  3. 选择 List view(列表视图),然后选择要发送指标的应用程序监视器名称。

  4. 选择 Configuration(配置)选项卡,然后选择 RUM extended metrics(RUM 扩展指标)。

  5. 选择一个或多个指标名称和维度组合以停止发送。然后选择 Actions(操作)、Delete(删除)。

教程:创建扩展指标并为其设置告警

本教程将演示如何设置要发送到 CloudWatch 的扩展指标,以及如何为该指标设置告警。在本教程中,您将创建一个指标来跟踪 Chrome 浏览器上的 JavaScript 错误。

设置该扩展指标并为其设置告警
  1. 访问 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中,选择 Application SignalsRUM

  3. 选择 List view(列表视图),然后选择要发送该指标的应用程序监视器名称。

  4. 选择 Configuration(配置)选项卡,然后选择 RUM extended metrics(RUM 扩展指标)。

  5. 选择 Send metrics(发送指标)。

  6. 选择 JSErrorCount

  7. Browsers(浏览器)下,选择 Chrome

    这种 JSErrorCountChrome 的组合将向 CloudWatch 发送一个扩展指标。该指标仅计算使用 Chrome 浏览器的用户会话的 JavaScript 错误。指标名称将是 JSErrorCount,维度名称将是 Browser(浏览器)。

  8. 选择 Send metrics(发送指标)。

  9. Extended metrics(扩展指标)列表中,在 Name(名称)下显示 JSErrorCount 并在 BrowserName(浏览器名称)下显示 Chrome 的行中选择 Create alarm(创建告警)。

  10. Specify metric and conditions(指定指标和条件)下,确认 Metric name(指标名称)和 BrowserName(浏览器名称)字段已预先填充正确的值。

  11. 对于 Statistic(统计数据),选择要用于告警的统计数据。对于这种类型的计数指标,Average(平均值)是一个不错的选择。

  12. 对于时段,选择 5 分钟

  13. Conditions(条件)下,执行以下操作:

    • 选择 Static(静态)。

    • 选择 Greater(大于),指定当错误数高于您要指定的阈值时告警应进入 ALARM 状态。

    • than... 下,输入告警阈值数字。当 5 分钟内的错误数超过此数字时,告警将进入 ALARM 状态。

  14. (可选)默认情况下,一旦错误数在 5 分钟内超过您设置的阈值数字,告警就会进入 ALARM 状态。您也可以选择更改此设置,使告警仅在超过此数字的时间多于一个 5 分钟周期时才进入 ALARM 状态。

    为此,请选择 Additional configuration(其他配置),然后为 Datapoints to alarm(触发告警的数据点数)指定错误数超过阈值的时间需要达到多少个 5 分钟周期才能触发告警。例如,您可以选择 2 选 2,仅在连续两个 5 分钟周期超过阈值时触发告警;您也可以选择 3 选 2,当连续三个 5 分钟周期中的任意两个超过阈值时触发告警。

    有关此类告警评估的更多信息,请参阅 评估告警

  15. 选择下一步

  16. 对于 Configure actions(配置操作),指定当告警进入 ALARM 状态时应进行的操作。要使用 Amazon SNS 接收通知,请执行以下操作:

    • 选择 Add notification(添加通知)

    • 选择告警中

    • 选择一个现有的 SNS 主题或创建一个新主题。如果您创建了一个新主题,请为其指定一个名称,并向其添加至少一个电子邮件地址。

  17. 选择下一步

  18. 输入告警的名称和描述(可选),然后选择 Next(下一步)。

  19. 检查详细信息,然后选择 Create alarm(创建告警)。