• /
  • EnglishEspañolFrançais日本語한국어Português
  • 로그인지금 시작하기

Ruby agent release notesRSS

September 14
Ruby agent v10.8.0

중요

We recommend updating to the latest agent version as soon as it's available. If you can't upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date.

See the New Relic Ruby agent EOL policy for information about agent releases and support dates.

v10.8.0

  • Feature: Report a unique hostname for Google Cloud Run Worker Pools and Jobs

    Cloud Run hostname support, added in PR#3609, detected Cloud Run only through K_REVISION, the environment variable set by Cloud Run Services. The agent now also recognizes CLOUD_RUN_REVISION (Worker Pools) and CLOUD_RUN_EXECUTION (Jobs), so utilization.gcp_cloud_run.use_instance_as_host now applies to all three resource types. When utilization.gcp_cloud_run.include_revision_in_host is true, the hostname is built from whichever of these variables is present — for example, {CLOUD_RUN_EXECUTION}-{instance id} for a Job. Issue#3651 PR#3652

  • Feature: Add browser_monitoring.version configuration option

    Customers can now pin the exact browser agent loader version New Relic injects by setting the new browser_monitoring.version configuration option. See the browser agent EOL policy for which versions are currently available and supported. PR#3663

  • Feature: Add span.kind to background job libraries

    Now, the span.kind attribute will be added to produce and consume operations from background job libraries. This includes ActiveJob, Sidekiq, Resque and DelayedJob. PR#3636

  • Bugfix: DelayedJob instrumentation no longer reinstalls itself on every worker under prepend mode

    When DelayedJob instrumentation is installed via prepend (the default), creating more than one Delayed::Worker in the same process caused the agent to log "Installing DelayedJob instrumentation" and reinitialize the plugin again for each additional worker. This was harmless but noisy; it's now only done once per process, matching the existing chain-instrumentation behavior. PR#3654

  • Bugfix: Allowlisted configuration values are no longer case sensitive

    Previously, allowlisted configuration options required an exact case match, so a value with unexpected casing — like OBFUSCATED or ObFuScAtEd for slow_sql.record_sql — would silently fall back to the default. Configuration options that validate against an allowlist now match values regardless of case, so both are treated the same as obfuscated. Issue#3613 PR#3645

  • Bugfix: Puma instrumentation works when Puma is lazy-loaded

    With gem "puma", require: false, Puma was not yet loaded when the agent's dependency check ran, so Puma instrumentation would fail to install. The agent now recognizes Puma::RackHandler as evidence that Puma is present, fixing this issue. Issue#3641 PR#3650

August 20
Ruby agent v10.7.1

중요

최신 에이전트 버전이 출시되면 즉시 업데이트하는 것이 좋습니다. 최신 버전으로 업그레이드할 수 없는 경우, 에이전트를 90일 이내 버전으로 업데이트하세요. 에이전트에게 최신 정보를 제공하는 방법 에 대해 자세히 알아보세요.

에이전트 릴리스 및 지원 날짜에 대한 정보는 뉴렐릭 루비 에이전트 EOL 정책을 참조하세요.

v10.7.1

  • 버그 수정: Dalli 5.1.0을 사용한 다중 키 작업에서 ArgumentError 해결

    이 수정 사항은 다중 및 파이프라인 작업에서 선택적 요청 옵션 인수를 수락하고 전달하도록 Dalli 계측을 업데이트합니다. 수정 사항을 기여해 주신 @dbackeus 님께 감사드립니다! PR#3642

  • 버그 수정: 세그먼트가 시작되지 않을 때 Async::HTTP requests가 더 이상 NoMethodError을(를) 발생시키지 않음

    에이전트가 Async::HTTP 요청에 대한 세그먼트를 생성하는 동안 내부 오류가 발생한 경우, 계측은 해당 누락된 세그먼트를 계속 사용하여 NoMethodError을(를) 발생시킬 수 있었습니다. @ydah 님 덕분에 이제 이 문제가 수정되었습니다. PR#3640

August 6
Ruby agent v10.7.0

중요

최신 에이전트 버전이 출시되면 즉시 업데이트하는 것이 좋습니다. 최신 버전으로 업그레이드할 수 없는 경우, 에이전트를 90일 이내 버전으로 업데이트하세요. 에이전트에게 최신 정보를 제공하는 방법 에 대해 자세히 알아보세요.

에이전트 릴리스 및 지원 날짜에 대한 정보는 뉴렐릭 루비 에이전트 EOL 정책을 참조하세요.

v10.7.0

  • 기능: transaction_tracer.cap_segment_artifacts 구성 옵션 추가

    세그먼트가 많은 장기 실행 트랜잭션은 트랜잭션의 수명 동안 메모리 사용량을 지속적으로 증가시킬 수 있습니다. 이제 에이전트는 옵트인 transaction_tracer.cap_segment_artifacts 설정 옵션을 제공합니다(기본값은 false입니다). 활성화된 경우, transaction_tracer.limit_segments 에 도달하면 에이전트는 해당 트랜잭션에서 이후에 생성된 모든 세그먼트에 대한 독점 시간 기록도 중지하여 트랜잭션에 대한 타이밍 데이터의 정확도를 낮추는 대신 메모리 사용량을 줄입니다. PR#3615

  • 기능: Puma 서버 통계 계측 추가

    이제 에이전트는 Puma의 클러스터 전체 서버 통계를 샘플링하고 이를 backlog, running, pool_capacity, max_threadsrequests_count를 포함한 Ruby/Puma/* 타임슬라이스 메트릭으로 보고합니다. 통계는 단일 모드에서, 그리고 preload_app! 이(가) 활성화된 경우 클러스터 모드에서 샘플링됩니다. 이 계측은 기본적으로 비활성화되어 있습니다. disable_puma_instrumentation 을(를) false(으)로 설정하여 활성화하십시오. 활성화되면 에이전트는 이러한 메트릭을 전달하기 위해 Puma 마스터 프로세스에서 보고 스레드를 시작하며, 이는 Puma 워커와 함께 추가 에이전트 연결을 실행합니다. 샘플링 간격은 새로운 puma.sample_rate 설정을 통해 구성할 수 있습니다(기본값 60초). Puma 6.6 이상이 필요합니다. 자세한 내용은 문서 를 참조하십시오. PR#3578

  • 기능: Google Cloud Run 인스턴스에 대한 고유 호스트명 보고

    이제 에이전트가 Cloud Run을 감지하고 개별 인스턴스를 구분할 수 있도록 GCP 인스턴스 ID를 호스트명으로 보고합니다. 이 변경 이전에는 모든 Google Cloud Run 호스트명이 localhost이었습니다. 이 기능은 새로운 utilization.gcp_cloud_run.use_instance_as_host 설정 옵션(기본값 true)에 의해 제어됩니다. 대신 호스트명을 {K_REVISION}-{instance id} (으)로 보고하려면 utilization.gcp_cloud_run.include_revision_in_host (기본값 false)을(를) true (으)로 설정하십시오. 여기서 K_REVISION 은(는) Cloud Run 리비전 이름입니다. Issue#3295 PR#3609

  • 버그 수정: transaction_tracer.limit_segments 초과되었습니다

    트랜잭션이 transaction_tracer.limit_segments을(를) 초과한 후에도, 이후에 생성된 데이터스토어 세그먼트에 느린 SQL이 여전히 기록될 수 있었습니다. 이제 에이전트는 한도에 도달한 후 생성된 모든 세그먼트에 대해 느린 SQL 기록을 중지합니다. PR#3615

  • 버그 수정: 다중 데이터베이스 Rails 앱에서 실행 계획이 잘못된 데이터베이스를 타겟으로 할 수 있는 문제 (Rails>=7.2)

    Rails 7.2+에서 에이전트는 전용 연결 대신 앱의 기본/공유 풀의 연결을 사용하여 실행 계획을 수집했습니다. 이는 주로 다중 데이터베이스 앱에 영향을 미쳤습니다. 잘못된 데이터베이스에 대해 실행 계획이 생성될 수 있었으며, 실행 계획이 실패하면 공유 연결이 잘못된 상태로 남아 관련 없는 requests에 영향을 미칠 수 있었습니다. 이제 에이전트는 Rails 7.2 이전과 마찬가지로 실행 계획에 자체 전용 연결을 사용하며, 실행 계획 시도가 실패할 때마다 해당 연결을 재설정하거나 폐기하여 잘못된 연결이 재사용되지 않도록 합니다. Issue#3610 PR#3612

  • 버그 수정: 브라우저 모니터링 계측이 더 이상 다음으로 인해 실패하지 않습니다. FrozenError

    응답 본문의 첫 번째 조각이 고정된 String 이고 여러 조각이 있는 경우, 브라우저 계측에서 FrozenError 이(가) 발생하여 브라우저 타이밍 헤더가 주입되지 않았습니다. 이 현상은 컴파일된 문자열을 더 많이 고정하기 시작한 ERB 6.0.3+부터 나타나기 시작했습니다. 이제 이 문제가 수정되었습니다. Issue#3624 PR#3625

  • 버그 수정: 모든 대소문자를 허용하도록 부울 설정 값 정규화

    버전 9.x에서 에이전트는 "FALSE"와 같은 대문자 부울 값과 "True"와 같은 대소문자가 혼합된 값을 허용했습니다. 버전 10.0.0에는 대소문자를 구분하지 않는 요구 사항을 의도치 않게 제거한 PR#3341이 포함되었습니다. 이로 인해 모두 소문자가 아닌 다른 대소문자를 사용한 사용자는 설정 옵션이 기본값으로 대체되었습니다. 이제 에이전트는 다시 대소문자를 구분하지 않는 검사를 사용합니다. Issue#3632 PR#3633

June 25
Ruby agent v10.6.0

중요

최신 에이전트 버전이 출시되면 즉시 업데이트하는 것이 좋습니다. 최신 버전으로 업그레이드할 수 없는 경우, 에이전트를 90일 이내 버전으로 업데이트하세요. 에이전트에게 최신 정보를 제공하는 방법 에 대해 자세히 알아보세요.

에이전트 릴리스 및 지원 날짜에 대한 정보는 뉴렐릭 루비 에이전트 EOL 정책을 참조하세요.

v10.6.0

  • 기능: 이제 하이브리드 에이전트에서 SpanLink 이벤트가 지원됩니다.

    이제 OpenTelemetry API에서 생성된 스팬에 스팬 링크 를 연결할 수 있습니다. 링크는 스팬이 시작될 때 links 인수에 전달하거나 OpenTelemetry::Trace::Span#add_link API를 호출하여 추가할 수 있습니다. PR#3586

  • 기능: 이제 하이브리드 에이전트에서 SpanEvent 이벤트가 지원됩니다.

    이제 OpenTelemetry API에서 생성된 스팬은 OpenTelemetry::Trace::Span#add_event API를 통해 SpanEvent 이벤트 와 연결될 수 있습니다. SpanEvent 이벤트는 스팬에서 타임스탬프가 지정된 주석을 캡처하고 상위 스팬과 함께 뉴렐릭으로 전송됩니다. PR#3587

  • 기능: 모든 하이브리드 에이전트 스팬에 스팬 종류 설정

    이전에는 외부 요청 세그먼트나 데이터스토어 세그먼트로 변환된 OpenTelemetry 스팬만 스팬 종류를 속성으로 추가했습니다. 이제 에이전트는 값을 사용할 수 있는 모든 OpenTelemetry 스팬에 스팬 종류를 추가합니다. PR#3589

  • 기능: OpenTelemetry::Tracer#start_root_span에 대한 지원 추가

    이제 OpenTelemetry::Tracer#start_root_span API를 사용하여 스팬 종류가 :server 또는 :consumer 인 경우 주어진 스팬에 대해 트랜잭션을 강제로 시작할 수 있습니다. 다른 스팬 종류의 경우 아무 작업도 수행하지 않습니다. 이 메서드는 백그라운드 작업 계측에 가장 일반적으로 사용됩니다. PR#3588

  • 버그 수정: instrumentation.rails_event_logger: false 이(가) 계측을 비활성화하지 않는 문제 수정

    이전에는 instrumentation.rails_event_logger 을(를) false (으)로 설정해도 예상대로 Rails.event 계측이 비활성화되지 않았으며, Rails 부팅 중에 여전히 설치되었습니다. 이제 이 문제가 수정되었습니다. PR#3564

  • 버그 수정: 계측 구성 키에 대해 부울과 유사한 값을 disabled (으)로 정규화

    이전에는 disabledinstrumentation.* 구성 키를 끌 수 있었습니다. 이제 false, no 또는 off 와 같은 부울과 유사한 값도 disabled (으)로 확인되어 계측이 설치되는 것을 방지합니다. PR#3579

  • 버그 수정: 이제 라이브러리별 로깅 지원 가능성 메트릭에 각 라이브러리의 계측 상태가 반영됩니다

    이전에는 Supportability/Logging/Ruby/{library}/{enabled|disabled} 메트릭이 각 라이브러리의 실제 상태가 아니라 모든 라이브러리에 대한 전역 application_logging.enabled 설정 값을 보고했습니다. 결과적으로 특정 라이브러리에 대한 로깅 계측을 비활성화했거나 해당 라이브러리의 gem을 전혀 사용하지 않은 경우에도 메트릭은 enabled 을(를) 보고했습니다. 이제 각 라이브러리의 메트릭은 자체 로깅 계측이 활성화되어 있는지 여부를 반영합니다. PR#3571

May 14
Ruby agent v10.5.0

중요

최신 에이전트 버전이 출시되면 즉시 업데이트하는 것이 좋습니다. 최신 버전으로 업그레이드할 수 없는 경우, 에이전트를 90일 이내 버전으로 업데이트하세요. 에이전트에게 최신 정보를 제공하는 방법 에 대해 자세히 알아보세요.

에이전트 릴리스 및 지원 날짜에 대한 정보는 뉴렐릭 루비 에이전트 EOL 정책을 참조하세요.

v10.5.0

  • 기능: Dalli 5.0 지원 추가 및 메타 프로토콜 계측 수정

    이제 에이전트는 메타 프로토콜을 전적으로 사용하기 위해 Dalli::Protocol::Binary 을(를) 제거한 Dalli 5.0+를 지원합니다. Dalli 3.2.0+의 경우, pipelined_get 계측은 이제 Dalli::Protocol::Binary 대신 Dalli::Protocol::Base (메서드가 정의된 곳)를 올바르게 타겟으로 지정하여, 메타 프로토콜을 사용할 때 get_multi 호출이 계측되지 않던 문제를 해결합니다. Dalli 5.0+의 경우, 에이전트는 Dalli의 단일 서버 get_multi 최적화에 의해 호출되는 Dalli::Protocol::Meta#read_multi_req을(를) 추가로 계측합니다. PR#3541

  • 기능: active_record_use_table_name 설정 옵션 추가

    새로운 설정 옵션인 active_record_use_table_name은(는) 메트릭, 스팬 및 트랜잭션 트레이스 세그먼트의 이름을 지정할 때 Active Record 모델의 클래스 이름 대신 테이블 이름을 사용합니다. 이는 단일 테이블 상속을 사용하는 애플리케이션에서 카디널리티를 줄이는 데 특히 도움이 될 수 있습니다. 기존 동작을 유지하기 위해 옵션은 기본적으로 false (으)로 설정됩니다. PR#3540

  • 기능: 에이전트 로그에서 라이선스 키 부분 삭제

    이전에는, 에이전트가 에이전트 로그에서 뉴렐릭 라이선스 키를 완전히 삭제했습니다. 이제 처음 10자는 표시되고 나머지는 *(으)로 대체됩니다. 이는 키의 비밀 부분을 노출하지 않고도 리전 관련 문제를 해결하기에 충분한 정보를 보존합니다. PR#3547

  • 버그 수정: Semantic Logger 계측 비호환성 수정 rails_semantic_logger

    이전에는 rails_semantic_logger을(를) 사용하는 동안 예외가 ActionDispatch::DebugExceptions 에 도달하면 ArgumentError 이(가) 발생했습니다. 수정되었다. 이를 제보해 주신 @jdelStrother 님께 감사드립니다! PR#3548

April 16
Ruby agent v10.4.0

중요

We recommend updating to the latest agent version as soon as it's available. If you can't upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date.

See the New Relic Ruby agent EOL policy for information about agent releases and support dates.

v10.4.0

  • Feature: Add Rails.event instrumentation for structured logging

    The agent now supports Rails.event as structured log events. When enabled, events published via Rails.event.notify are captured and forwarded to New Relic as log events. Event payloads, tags, context, timestamps, and source locations are automatically captured as log attributes.

    This instrumentation can be configured with the following options:

    • instrumentation.rails_event_logger - Controls whether Rails.event instrumentation is enabled. Defaults to use the value of application_logging.enabled.
    • instrumentation.rails_event_logger.event_names - An array of specific event names to capture. When empty (default), all Rails.event notifications are captured. Use this to filter events by name, for example: ['user.signup', 'payment.processed'].

    PR#3526

  • Feature: Add instrumentation for Rails Active Job Continuations

    The agent now instruments Rails Active Job Continuations, providing visibility into individual step execution within long-running jobs. Step names are included in segment metrics (e.g., Ruby/ActiveJob/default/MyJob/step/process_records) and step-specific attributes like cursor position, resumed status, and interrupted status are captured. A new configuration option, disable_active_job_step_names, allows users to exclude step names from metric names to reduce metric cardinality if needed (defaults to false). PR#3493

  • Feature: Add sidekiq.separate_transactions configuration option

    A new configuration option, sidekiq.separate_transactions, allows Sidekiq jobs executed during a web transaction to run in their own separate transaction. When enabled, this prevents Sidekiq job execution time from being included in web transaction metrics, providing more accurate performance data. The feature is opt-in (default: false) to maintain backward compatibility. This only affects jobs executed during active web transactions; jobs starting independently or nested within other background jobs are unaffected. Issue#3364 PR#3514

  • Bugfix: Update regexes that may have been vulnerable to ReDOS attacks

    Previously, the agent had a few regexes identified as possible targets for polynomial time complexity (ReDOS) attacks. Those regexes are now updated to address the concerns. PR#3520

  • Bugfix: Prevent crashes during HTTPX segment creation

    Previously, if start_external_request_segment encountered an error and returned nil, the agent would trigger a NoMethodError when attempting to add headers to the missing segment. We've added a guard check to ensure the instrumentation handles these cases gracefully.

    Bravo to @thebravoman for the report! Issue#3509 PR#3510

  • Bugfix: Make Transaction#finish idempotent

    Previously, if the Transaction#finish method was called multiple times, more than one transaction could be created for the same operation. Now, a mutex protects calls to Transaction#finish to make sure finish operations only run once. PR#3513

  • Bugfix: Log deprecation warning for Datastores.wrap API once

    Previously, this warning was being logged on every call to Datastores.wrap. Now, it will be logged only on the first call. In addition, the documentation has been updated to note the deprecated status of the second and third callback arguments. Issue#3516 PR#3519

Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.