중요
최신 에이전트 버전이 출시되면 즉시 업데이트하는 것이 좋습니다. 최신 버전으로 업그레이드할 수 없는 경우, 에이전트를 90일 이내 버전으로 업데이트하세요. 에이전트에게 최신 정보를 제공하는 방법 에 대해 자세히 알아보세요.
에이전트 릴리스 및 지원 날짜에 대한 정보는 뉴렐릭 루비 에이전트 EOL 정책을 참조하세요.
v10.4.0
기능: 구조화된 로깅을 위한 Rails.event 계측 추가
이제 에이전트는 Rails.event를 구조화된 로그 이벤트로 지원합니다. 활성화되면
Rails.event.notify을(를) 통해 게시된 이벤트는 캡처되어 로그 이벤트로 뉴렐릭에 전달됩니다. 이벤트 페이로드, 태그, 컨텍스트, 타임스탬프 및 소스 위치는 로그 속성으로 자동으로 캡처됩니다.이 계측은 다음 옵션으로 구성할 수 있습니다:
instrumentation.rails_event_logger- Rails.event 계측이 활성화되는지 여부를 제어합니다. 기본적으로application_logging.enabled값을 사용합니다.instrumentation.rails_event_logger.event_names- 캡처할 특정 이벤트 이름의 어레이입니다. 비어 있는 경우(기본값), 모든 Rails.event 공지가 캡처됩니다. 이를 사용하여 이름별로 이벤트를 필터링합니다. 예:['user.signup', 'payment.processed'].
기능: Rails Active Job Continuations 계측 추가
이제 에이전트가 Rails Active Job Continuations를 계측하여 장기 실행 작업 내의 개별 단계 실행에 대한 가시성을 제공합니다. 단계 이름은 세그먼트 메트릭(예:
Ruby/ActiveJob/default/MyJob/step/process_records)에 포함되며 커서 위치, 재개 상태, 중단 상태와 같은 단계별 속성이 캡처됩니다. 새로운 설정 옵션인disable_active_job_step_names을(를) 통해 사용자는 필요한 경우 메트릭 기수를 줄이기 위해 메트릭 이름에서 단계 이름을 제외할 수 있습니다(기본값은false입니다). PR#3493기능: sidekiq.separate_transactions 추가 설정 옵션
새로운 설정 옵션인
sidekiq.separate_transactions을(를) 사용하면 웹 트랜잭션 중에 실행되는 Sidekiq 작업을 별도의 자체 트랜잭션에서 실행할 수 있습니다. 활성화하면 Sidekiq 작업 실행 시간이 웹 트랜잭션 메트릭에 포함되는 것을 방지하여 더 정확한 성능 데이터를 제공합니다. 이 기능은 역호환성을 유지하기 위해 선택 사항(기본값: false)입니다. 이는 활성 웹 트랜잭션 중에 실행되는 작업에만 영향을 미치며, 독립적으로 시작되거나 다른 백그라운드 작업 내에 중첩된 작업은 영향을 받지 않습니다. Issue#3364 PR#3514버그 수정: ReDOS 공격에 취약했을 수 있는 정규식 업데이트
이전에는 에이전트에 다항 시간 복잡도(ReDOS) 공격의 가능한 타겟으로 식별된 몇 가지 정규식이 있었습니다. 우려 사항을 해결하기 위해 해당 정규식이 업데이트되었습니다. PR#3520
Bugfix: HTTPX 세그먼트 생성 중 충돌을 방지합니다.
이전에는
start_external_request_segment에서 오류가 발생하여nil을(를) 반환하면, 에이전트는 누락된 세그먼트에 헤더를 추가하려고 시도할 때NoMethodError을(를) 트리거했습니다. 계측이 이러한 경우를 원활하게 처리할 수 있도록 가드 검사를 추가했습니다.보고서를 작성해 주신 @thebravoman 님께 박수를 보냅니다! 이슈#3509 PR#3510
버그 수정: Transaction#finish를 멱등하게 만들기
이전에는 Transaction#finish 메서드가 여러 번 호출되면 동일한 작업에 대해 둘 이상의 트랜잭션이 생성될 수 있었습니다. 이제 뮤텍스가 Transaction#finish에 대한 호출을 보호하여 finish 작업이 한 번만 실행되도록 합니다. PR#3513
버그 수정: Datastores.wrap API의 Log 기능에 대한 사용 중단 경고 (1회)
이전에는 Datastores.wrap에 대한 모든 호출에서 이 경고가 로그에 기록되었습니다. 이제 첫 번째 호출에만 로그가 기록됩니다. 또한, 두 번째 및 세 번째 콜백 인수의 사용 중단 상태를 명시하도록 문서가 업데이트되었습니다. 이슈#3516 PR#3519