View a markdown version of this page

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

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

Amazon X-Ray 示例应用程序

注意

X-Ray SDK/Daemon 维护通知 — 2026 年 2 月 25 日, Amazon X-Ray SDKs/Daemon 将进入维护模式, Amazon 将限制 X-Ray SDK 和守护程序的发布仅限于解决安全问题。有关支持时间表的更多信息,请参阅 X-Ray SDK 和 Daemon Support 时间表。我们建议迁移到 OpenTelemetry。有关迁移到的更多信息 OpenTelemetry,请参阅从 X-Ray 仪器仪器迁移到仪器 OpenTelemetry 仪表。

上提供的 Amazon X-Ray eb-java-scorekeep 示例应用程序显示了如何使用该软件开发工具包来检测传入的 HTTP 呼叫 GitHub、DynamoDB Amazon X-Ray SDK 客户端和 HTTP 客户端。该示例应用程序用于 Amazon CloudFormation 创建 DynamoDB 表、在实例上编译 Java 代码以及在不进行任何额外配置的情况下运行 X-Ray 守护程序。

请参阅 Scorekeep 教程,使用或开始安装和使用仪器化示例应用程序。 Amazon Web Services 管理控制台 Amazon CLI

Scorekeep 使用 Amazon X-Ray SDK 来检测传入的 HTTP 调用、DynamoDB SDK 客户端和 HTTP 客户端

该示例包括前端 Web 应用程序、所调用的 API 以及它用于存储数据的 DynamoDB 表。项目分xray-gettingstarted支中显示了带有过滤器、插件和仪器化的 Amazon SDK 客户端的基本工具。这是您在入门教程中部署的分支。由于此分支只包含基本分析,您可以根据 master 分支比较差异,以快速理解基本分析。

服务地图显示客户端正在连接到 Scorekeep 容器,该容器连接到 DynamoDB 表格和 SNS。

该应用程序示例在这些文件中显示基本检测:

该应用程序的 xray 分支包含对 HTTPClient、注释、SQL 查询、自定义子分段、检测过的 Amazon Lambda 函数以及检测过的初始化代码和脚本的使用。

为了支持用户登录和在浏览器中 适用于 JavaScript 的 Amazon SDK 使用,该xray-cognito分支机构添加了 Amazon Cognito 以支持用户身份验证和授权。通过从 Amazon Cognito 检索证书,网络应用程序还会向发送跟踪数据, X-Ray 以从客户的角度记录请求信息。浏览器客户端在跟踪地图中显示为自己的节点,并记录其他信息,包括用户正在查看的页面的 URL 和用户的 ID。

最后,xray-worker 分支将添加独立运行的检测过的 Lambda 函数,并处理来自 Amazon SQS 队列的项目。每当游戏结束时,Scorekeep 就会向队列添加一个项目。由 CloudWatch 事件触发的 Lambda 工作程序每隔几分钟从队列中提取项目并对其进行处理以将游戏记录存储在 Amazon S3 中进行分析。