Ruby 支持的组件和版本

要确保 Instana gem 与您当前的设置兼容,请查看以下支持信息部分。

有关监控 Ruby 应用程序的更多信息,请参阅监控 Ruby

Ruby 支持的组件

Ruby 支持的版本

下表列出了 Instana gem 支持的 Ruby 版本:

Ruby 版本 红宝石传感器版本
CRuby >= 2.1 和 < 2.7 <= 1.209.4
CRuby >= 2.7 和 <= 3.3 <= 1.213.3
CRuby >= 3.0 和 <= 3.5 >= 1.214.0

长期支持

遵循 Ruby 的官方 LTS 和生命周期终止 (EOL) 时间表

当 Ruby 版本到了 EOL 日期时,Instana 会再提供一年的支持期。 为避免出现问题,请定期更新 Ruby 版本。

受支持的框架

下表列出了 Instana gem 支持的 Ruby 框架:

框架 支持策略 版本
Cuba 按需 >= 3.0.0 和 <= 4.0.3
机架 45 天 >= 1.4.5 和 <= 3.2.0
Rails 45 天 >= 0.4.0 和 <= 8.0.2 支持 ActionController 模块ActionView 模块render partial 方法的仪表化。
Rails::API 45 天 >= 0.4.0 和 <= 0.4.1 Rails::API 已合并到 Rails 5.0.0
Rails LTS 按需 >= 2.3 和 <= 6.1
Roda 45 天 >= 2.0.0 和 <= 3.94.0
Sinatra 45 天 >= 1.1.4 和 <= 4.1.1

支持的客户端和库

跟踪连续性不适用于数据库和日志库。

下表列出了 Instana gem 支持的 Ruby 客户端库:

客户机 支持策略 版本
Excon 45 天 >= 0.21.0 和 <= 1.2.8
gRPC 45 天 >= 1.0.1 和 <= 1.74.0
Net::HTTP 0 天 >= 2.1 和 <= 0.6.0
恢复客户端 45 天 >= 1.6.0 和 <= 2.1.0
后续 45 天 >= 5.60 和 <= 5.95.0

下表列出了 Instana gem 支持的 Memcache 库:

Memcache 支持策略 版本
Dalli 45 天 >= 2.0.0 和 <= 3.2.8

下表列出了 Instana gem 支持的 Ruby 消息传递和后台作业处理库:

消息传递和后台作业处理 支持策略 版本
Resque 45 天 >= 1.22.0 和 <= 2.7.0
Sidekiq 45 天 >= 2.12.0 和 <= 8.0.6

下表列出了 Instana gem 支持的查询语言:

查询语言 支持策略 版本
GraphQL 45 天 >= 1.8.8 和 <= 2.5.11

受支持的 Web 服务器

Instana gem 支持以下网络服务器:

  • Apache
  • Nginx
  • 乘客
  • Puma
  • Rhebok
  • 薄型
  • Unicorn

传感器数据收集

Instana gem 会收集以下配置和指标数据:

跟踪的配置 度量
Ruby 版本 GC 耗用的时间
运行时自变量 内存使用率
框架 堆插槽数
Gem 束 线程

跟踪

您可以为 Ruby 应用程序启用跟踪功能。

追踪支持

使用 Instana,您可以为 Ruby 应用程序启用以下跟踪功能:

追踪说明和限制

Instana 在跟踪 Ruby 应用程序时有以下限制:

使用多个跟踪器跟踪

不支持同时使用 Instana 和第三方跟踪器(如 New Relic 跟踪器或 OpenTelemetry )跟踪单个 Ruby 应用程序。

避免激活相互冲突的宝石

当您使用 Instana AutoTrace 网络钩子或 Instana Ruby 跟踪器时,必须为仪器应用程序交付其依赖性 gem。 应用程序选择自己的依赖项后,依赖项 gem 就会交付。 因此,两个依赖树(即 Instana Ruby 跟踪器和 Ruby 应用程序)之间可能存在重叠。 Instana 追踪器会采取谨慎措施,避免激活同一 Ruby gem 的多个版本。 应用程序必须负责任地行事,不激活所有或随机选择的可用宝石,以免造成冲突。 因此,您不能无条件地使用显式激活方法和具有激活副作用的方法。

以下方法可以有条件地使用:

  • Gem::Specification.activate
  • Gem::Specification.activate_dependencies
  • Gem.activate_bin_path