适用于 Ruby 的 AWS X-Ray 开发工具包 - AWS X-Ray
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

适用于 Ruby 的 AWS X-Ray 开发工具包

X-Ray SDK是一个面向 Ruby Web 应用程序的库,该库提供用于生成跟踪数据并将其发送到 X-Ray 守护程序的类和方法。跟踪数据包括由应用程序提供服务的传入 HTTP 请求的相关信息,以及应用程序使用 AWS 开发工具包、HTTP 客户端或活动记录客户端对下游服务进行的调用。您还可以手动创建分段并在注释和元数据中添加调试信息。

您可以通过将开发工具包添加到 gemfile 并运行 bundle install 来下载开发工具包。

例 Gemfile

gem 'aws-sdk'

如果您使用了 Rails,请首先添加 X-Ray 开发工具包中间件来跟踪传入请求。请求筛选器将创建一个分段。当分段打开时,您可以使用开发工具包客户端的方法将信息添加到分段,并创建子分段以跟踪下游调用。开发工具包还会自动记录在分段打开时应用程序引发的异常。对于非 Rails 应用程序,您可以手动创建分段

接下来,使用X-Ray SDK分析 适用于 Ruby 的 AWS 开发工具包、HTTP 和 SQL 客户端,方法为配置记录器以修补关联的库。当您使用分析过的客户端调用下游 AWS 服务或资源时,开发工具包会在子分段中记录有关调用的信息。您访问的 AWS 服务及其资源将在服务地图中显示为下游节点,帮助您标识单个连接上的错误和限制问题。

在开始使用开发工具包后,通过配置记录器来自定义其行为。您可以添加插件来记录有关运行应用程序的计算资源的数据,通过定义采样规则来自定义采样行为,提供记录器以在应用程序日志中查看来自开发工具包的更多或更少的信息。

记录有关请求以及应用程序在注释和元数据中所做的工作的其他信息。注释是简单的键值对,已为这些键值对编制索引以用于筛选条件表达式,以便您能够搜索包含特定数据的跟踪。元数据条目的限制性较低,并且可以记录整个对象和数组 — 可序列化为 JSON 的任何项目。

注释和元数据

注释和元数据是您用 X-Ray 开发工具包添加到分段中的任意文本。会对注释编制索引,用于与筛选表达式一同使用。不会对元数据编制索引,但是可以在原始分段中通过 X-Ray 控制台或 API 查看。您授予对 X-Ray 读取权限的人都可以查看此数据。

当代码中具有大量分析的客户端时,一个请求分段可包含大量子分段,分析的客户端发起的每个调用均对应一个子分段。您可以通过将客户端调用包含在自定义子分段中来整理子分段并为其分组。您可以为整个函数或任何代码部分创建自定义子分段,并记录子分段的元数据和注释,而不是编写父分段的所有内容。

有关开发工具包的类和方法的参考文档,请参阅适用于 Ruby API 的 AWS X-Ray 开发工具包参考

要求

X-Ray SDK需要 Ruby 2.3 或更高版本,并且与以下库兼容:

  • 适用于 Ruby 的 AWS 开发工具包版本 3.0 或更高版本

  • Rails 版本 5.1 或更高版本