修改代码片段以配置 CloudWatch RUM Web 客户端(可选) - Amazon CloudWatch

修改代码片段以配置 CloudWatch RUM Web 客户端(可选)

您可以在代码段插入应用程序之前对其进行修改,以激活或停用多个选项。有关更多信息,请参阅 CloudWatch RUM Web 客户端文档

正如本章节中所述,您必须注意三个配置选项。

防止收集可能包含个人信息的资源 URL

预设情况下,CloudWatch RUM Web 客户端配置为记录应用程序下载的资源的 URL。这些资源包括 HTML 文件、图像、CSS 文件、JavaScript 文件等。对于某些应用程序,URL 可能包含个人身份信息(PII)。

如果应用程序属于这种情况,则强烈建议您通过在代码段配置中设置 recordResourceUrl: false 以禁用收集资源 URL,然后再将其插入到应用程序中。

手动记录页面浏览次数

默认情况下,Web 客户端会在页面首次加载以及调用浏览器的历史 API 时记录页面浏览次数。默认页面 ID 为 window.location.pathname。但在某些情况下,您可能需要覆盖此行为并利用应用程序以编程方式记录页面浏览量。这样您可以控制页面 ID 及其记录时间。例如,假设一个 Web 应用程序的 URI 带有变量标识符,例如 /entity/123/entity/456。默认情况下,CloudWatch RUM 会为每个具有与路径名匹配的不同页面 ID 的 URI 生成页面浏览事件,但您可能希望改用相同的页面 ID 对它们进行分组。为此,请使用 disableAutoPageView 配置禁用 Web 客户端的页面浏览自动化,然后使用 recordPageView 命令设置所需的页面 ID。有关更多信息,请参阅 GitHub 上的特定于应用程序的配置

嵌入式脚本示例:

cwr('recordPageView', { pageId: 'entityPageId' });

JavaScript 模块示例:

awsRum.recordPageView({ pageId: 'entityPageId' });

启用 X-Ray 端到端跟踪

在创建应用程序监控时,选择 Trace my service with AWS X-Ray(使用跟踪我的服务)将启用跟踪在应用程序监控采样的用户会话期间发出的 XMLHttpRequestfetch 请求。然后,您可在 CloudWatch RUM 控制面板、X-Ray 跟踪地图和跟踪详细信息页面查看来自这些 HTTP 请求的跟踪。

默认情况下,这些客户端跟踪未连接到下游服务器端跟踪。要将客户端跟踪连接到服务器端跟踪并启用端到端跟踪,请在 Web 客户端中将 addXRayTraceIdHeader 选项设置为 true。这将导致 CloudWatch RUM Web 客户端向 HTTP 请求添加 X-Ray 跟踪标头。

下面的代码块展示了添加客户端跟踪的示例。为提高可读性,此示例中省略了一些配置选项。

<script> (function(n,i,v,r,s,c,u,x,z){...})( 'cwr', '00000000-0000-0000-0000-000000000000', '1.0.0', 'us-west-2', 'https://client.rum.us-east-1.amazonaws.com/1.0.2/cwr.js', { enableXRay: true, telemetries: [ 'errors', 'performance', [ 'http', { addXRayTraceIdHeader: true } ] ] } ); </script>
警告

如果使用 SigV4 签署请求,则将 CloudWatch RUM Web 客户端配置为向 HTTP 请求添加 X-Ray 跟踪标头可能会导致跨源资源共享 (CORS) 失败或该请求的签名无效。有关更多信息,请参阅 CloudWatch RUM Web 客户端文档。我们强烈建议您在生产环境中添加客户端 X-Ray 跟踪标头之前测试应用程序。

有关更多信息,请参阅 CloudWatch RUM Web 客户端文档