Amazon X-Ray 用于跟踪中的请求 Amazon AppSync - Amazon AppSync
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon X-Ray 用于跟踪中的请求 Amazon AppSync

您可以使用跟踪Amazon X-Ray请求在中执行的过程 Amazon AppSync。您可以在所有可用 X-Ray 的 Amazon 区域 Amazon AppSync 中使用 X-Ray。X-Ray 为您提供整个 GraphQL 请求的详细概述。这使您能够分析自己及其底层解析器和数据源中的延迟。APIs您可以使用 X-Ray 服务地图来查看请求的延迟,包括与 X-Ray 集成的任何 Amazon 服务。您也可以配置采样规则,以根据您指定的标准指示 X-Ray 记录哪些请求以及以哪种采样率进行记录。

有关在 X-Ray 中采样的更多信息,请参阅在Amazon X-Ray 控制台中配置采样规则

设置和配置

您可以API通过控制台为 GraphQL 启用 X-Ray 跟踪。 Amazon AppSync

  1. 登录 Amazon AppSync 控制台。

  2. 从导航面板中选择 Settings (设置)

  3. X-Ray 下,开启 Enable X-Ray (启用 X-Ray)

  4. 选择保存。现在已为您启用 X-Ray 追踪API。

如果您使用的是 Amazon CLI 或 Amazon CloudFormation,则还可以在创建新 Amazon AppSync API的 X-Ray 或更新现有文件时启用 X-Ray 跟踪 Amazon AppSync API,方法是将该xrayEnabled属性设置为true

启用 X-Ray 跟踪后 Amazon AppSync API,系统会在您的账户中自动创建具有相应权限的 Amazon Identity and Access Management 服务相关角色。这允许 Amazon AppSync 以安全的方式向 X-Ray 发送跟踪。

API用 X-Ray 追踪你的

采样

通过使用采样规则,您可以控制记录的数据量 Amazon AppSync,并且可以在不修改或重新部署代码的情况下即时修改采样行为。例如,此规则对向带有 ID 的 GraphQL 发出的请求API进行采样。API 3n572shhcpfokwhdnq1ogu59v6

  • 规则名称 - test-sample

  • 优先级 - 10

  • 容器大小 - 10

  • 固定速率 - 10

  • 服务名称 - *

  • 服务类型 - AWS::AppSync::GraphQLAPI

  • HTTP方法*

  • 资源 ARNarn:aws:appsync:us-west-2:123456789012:apis/3n572shhcpfokwhdnq1ogu59v6

  • 主机 - *

了解跟踪

当您为 GraphQL 启用 X-Ray 跟踪时API,您可以使用 X-Ray 跟踪详细信息页面来检查有关向您的请求的详细延迟信息。API以下示例显示了此特定请求的跟踪视图以及服务地图。该请求是向一个 Post 类型的API调postAPI用方发出的,其数据包含在名为的 Amazon DynamoDB 表中。PostTable-Example

下面的跟踪映像对应于以下 GraphQL 查询:

query getPost { getPost(id: "1") { id title } }

getPost 查询的解析器使用底层 DynamoDB 数据来源。以下跟踪视图显示对 DynamoDB 的调用,以及查询执行的各个部分的延迟:

Trace view showing client request, postAPI, and DynamoDB with durations and request details.
  • 在上图中,/getPost 表示指向正在解析的元素的完整路径。在这种情况下,由于 getPost 是根 Query 类型上的字段,因此它直接显示在路径的根目录之后。

  • requestMappingTemplateEvaluation表示在查询中 Amazon AppSync 评估此元素的请求映射模板所花费的时间。

  • Query.getPost 表示类型和字段(采用 Type.field 格式)。它可以包含多个子段,具体取决于的结构API和所跟踪的请求。

    • DynamoDB 表示附加到此解析器的数据来源。它包含对 DynamoDB 进行网络调用以解析该字段的延迟。

    • responseMappingTemplateEvaluation表示在查询中 Amazon AppSync 评估此元素的响应映射模板所花费的时间。

在 X-Ray 中查看轨迹时,您可以通过选择子分段并浏览详细视图,获得有关区 Amazon AppSync 段中子分段的其他上下文和元数据信息。

对于某些深度嵌套或复杂的查询,请注意,传递给 X-Ray 的区段 Amazon AppSync 可能大于区段文档中Amazon X-Ray 定义的最大容量。X-Ray 不会显示超过限制的分段。