• /
  • EnglishEspaΓ±olFranΓ§aisζ—₯本θͺžν•œκ΅­μ–΄PortuguΓͺs
  • Log inStart now

Python agent release notesRSS

December 8
Python agent v11.2.0

Notes

이번 릴리슀 μ—μ΄μ „νŠΈμ—λŠ” λ‹€μŒμ— λŒ€ν•œ 지원이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

이번 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” μ›Ή μ„œλ²„μ—μ„œ 헀더가 λ³΄κ³ λ˜μ§€ μ•ŠλŠ” ASGI μΈ‘μ • 및 κ³„μΈ‘μ˜ 버그도 ν•΄κ²°λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

easy_install/pip/distribute μ‚¬μš©ν•˜μ—¬ μ—μ΄μ „νŠΈλ₯Ό μ„€μΉ˜ν•˜μ„Έμš”. 파이썬 νŒ¨ν‚€μ§€ 인덱슀λ₯Ό 톡해 conda μ‚¬μš©ν•˜κ±°λ‚˜, Conda-Forge νŒ¨ν‚€μ§€ 인덱슀λ₯Ό 톡해 을 μ‚¬μš©ν•˜κ±°λ‚˜, 뉴렐릭 λ‹€μš΄λ‘œλ“œ μ‚¬μ΄νŠΈ μ—μ„œ 직접 λ‹€μš΄λ‘œλ“œν•˜μ„Έμš”.

νŠΉμ§•

  • Strands지원을 μΆ”κ°€ν•©λ‹ˆλ‹€.

    • 단일 및 닀쀑 μ—μ΄μ „νŠΈ(κ΅°μ§‘, κ·Έλž˜ν”„ λ“±) μ„€μ •μ—μ„œ Strands 도ꡬ 및 μ—μ΄μ „νŠΈμ— λŒ€ν•œ μΈ‘μ •, λ¦¬μ†ŒμŠ€ μΆ”κ°€
  • AWS Bedrock Converse Streaming지원을 μΆ”κ°€ν•©λ‹ˆλ‹€.

    • Converse API μŠ€νŠΈλ¦¬λ°μ— λŒ€ν•œ λͺ¨λ‹ˆν„°λ§ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€. μ—¬κΈ°μ—λŠ” converse_stream() 을 μ‚¬μš©ν•˜μ—¬ boto3 및 aioboto3 ν΄λΌμ΄μ–ΈνŠΈλ‘œ μˆ˜ν–‰λ˜λŠ” Converse μ±„νŒ… μ™„λ£Œ ν˜ΈμΆœμ— λŒ€ν•œ 지원이 ν¬ν•¨λ©λ‹ˆλ‹€.
  • λ ˆλ””μŠ€ λ©”μ„œλ“œ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€.

    • λ‹€μŒ λ©”μ„œλ“œμ— λŒ€ν•œ 지원을 μΆ”κ°€ν•˜μ„Έμš”.

      • hybrid_search
      • msetex
  • loop_factory 에 λŒ€ν•œ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€. asyncio.Runner

    • λŒμ–΄μ˜€κΈ° 3.11μ—μ„œλŠ” asyncio.Runner ν΄λž˜μŠ€μ™€ loop_factory λͺ¨λ“ˆμ΄ μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€. loop_factory μ‹œμœ„λŠ” 루프 정책에 λŒ€ν•œ λŒ€μ²΄ 방법을 μ œκ³΅ν•©λ‹ˆλ‹€. 이제 μƒμ„±λœ λ£¨ν”„λŠ” μ „μ—­ 이벀트 루프 섀정을 ν†΅ν•˜λ“  μ‚¬μš©μž μ •μ˜ λŒ€μ‹œλ³΄λ“œ 루프λ₯Ό ν†΅ν•˜λ“  상관없이 μŠΉμΈλ©λ‹ˆλ‹€.
  • LLM μ΄λ²€νŠΈμ—μ„œ LangChain μ—­ν•  ν• λ‹Ή 캑처

    • LangChain LlmChatCompletionMessage μ΄λ²€νŠΈμ—λŠ” 이제 LangChain μ—μ„œ ν• λ‹Ήλœ 역할이 ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
  • LLM μš”μ²­ μ‹œμ μ˜ LLM 이벀트 νƒ€μž„μŠ€νƒ¬ν”„λ₯Ό μΊ‘μ²˜ν•©λ‹ˆλ‹€.

    • μ΄μ „μ—λŠ” LLM 이벀트의 νƒ€μž„μŠ€νƒ¬ν”„κ°€ 이벀트 생성 μ‹œμ μ— κΈ°λ‘λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ΄μ œλŠ” LLM μš”μ²­ μ‹œμ μ— λ”μš± μ •ν™•ν•˜κ²Œ κΈ°λ‘λ©λ‹ˆλ‹€.

버그 μˆ˜μ •

  • ASGI 헀더 μ†ŒλΉ„

    • ASGIWebTransaction 이 http.response.start 이벀트의 헀더λ₯Ό μ†ŒλΉ„ν•  λ•Œ, ν—ˆμš©λ˜λŠ” μž…λ ₯ μœ ν˜•μ„ κ³ λ €ν•˜μ§€ μ•Šκ³  κ·Έλ ‡κ²Œ ν–ˆμŠ΅λ‹ˆλ‹€. 헀더가 생성기인 경우 μƒμ„±κΈ°λŠ” process_response() ν˜ΈμΆœμ— μ˜ν•΄ μ†ŒλΉ„λ˜μ–΄ μ›Ή μ„œλ²„κ°€ 보낼 헀더가 남지 μ•ŠμŠ΅λ‹ˆλ‹€. 이제 이 λ¬Έμ œλŠ” ν•΄κ²°λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

μ§€μ§€ μ„±λͺ…

μ΅œμ‹  μ—μ΄μ „νŠΈ 버전이 μΆœμ‹œλ˜λ©΄ μ¦‰μ‹œ μ—…λ°μ΄νŠΈν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. μ΅œμ‹  λ²„μ „μœΌλ‘œ μ—…κ·Έλ ˆμ΄λ“œν•  수 μ—†λŠ” 경우, μ—μ΄μ „νŠΈλ₯Ό 90일 이내 λ²„μ „μœΌλ‘œ μ—…λ°μ΄νŠΈν•˜μ„Έμš”. μ—μ΄μ „νŠΈμ—κ²Œ μ΅œμ‹  정보λ₯Ό μ œκ³΅ν•˜λŠ” 방법에 λŒ€ν•΄ μžμ„Ένžˆ μ•Œμ•„λ³΄μ„Έμš”.

μ—μ΄μ „νŠΈ 릴리슀 및 지원 λ‚ μ§œμ— λŒ€ν•œ μ •λ³΄λŠ” 뉴렐릭 λŒμ–΄ λ‹ΉκΈ°λŠ” μ—μ΄μ „νŠΈ EOL 정책을 μ°Έμ‘°ν•˜μ„Έμš”.

November 3
Python agent v11.1.0

Notes

이번 λŒμ–΄ λ‹ΉκΈ°λŠ” μ—μ΄μ „νŠΈ λ¦΄λ¦¬μŠ€μ—λŠ” λŒμ–΄λ‹ΉκΉ€ 3.14 지원, 속성 ν•„ν„° 섀정을 μœ„ν•œ μƒˆλ‘œμš΄ ν™˜κ²½ λ³€μˆ˜, ν”„λ‘œμ„Έμ„œ λ°μ½”λ ˆμ΄ν„°μ˜ 비동기 생성기 지원, AWS Bedrock 의 μΆ”κ°€ λͺ¨λΈ 및 AWS Kinesis 의 μƒˆλ‘œμš΄ 방법이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” ConnectionPool μ—¬λŸ¬ 번 λž˜ν•‘ν•˜μ—¬ μ‚¬μš©ν•  λ•Œ RecursionError 이 λ°œμƒν•˜λŠ” aiomysql 의 버그, kombu 의 ν”„λ‘œλ“€μ„œμ—μ„œ 속성이 μ œλŒ€λ‘œ μ „λ‹¬λ˜μ§€ μ•ŠλŠ” 버그, ν•˜λ² μŠ€νŠΈ μŠ€λ ˆλ“œ λ‚΄μ—μ„œ shutdown_agent 호좜될 λ•Œ λ°œμƒν•˜λŠ” 였λ₯˜λ₯Ό μˆ˜μ •ν•©λ‹ˆλ‹€.

easy_install/pip/distribute μ‚¬μš©ν•˜μ—¬ μ—μ΄μ „νŠΈλ₯Ό μ„€μΉ˜ν•˜μ„Έμš”. 파이썬 νŒ¨ν‚€μ§€ 인덱슀λ₯Ό 톡해 conda μ‚¬μš©ν•˜κ±°λ‚˜, Conda-Forge νŒ¨ν‚€μ§€ 인덱슀λ₯Ό 톡해 을 μ‚¬μš©ν•˜κ±°λ‚˜, 뉴렐릭 λ‹€μš΄λ‘œλ“œ μ‚¬μ΄νŠΈ μ—μ„œ 직접 λ‹€μš΄λ‘œλ“œν•˜μ„Έμš”.

νŠΉμ§•

  • λŒμ–΄λ‹ΉκΉ€ 3.14 지원 μΆ”κ°€

    • λŒμ–΄μ˜€κΈ° 3.14에 λŒ€ν•œ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€.
  • 속성 ν•„ν„° 섀정에 λŒ€ν•œ ν™˜κ²½ λ³€μˆ˜ μΆ”κ°€

    • λ‹€μŒ 섀정은 이제 ν™˜κ²½ λ³€μˆ˜λ₯Ό 톡해 μ„€μ •ν•  수 μžˆλŠ” μ˜΅μ…˜μ΄ μƒκ²ΌμŠ΅λ‹ˆλ‹€.

      ꡬ성 μ„€μ •ν™˜κ²½ λ³€μˆ˜
      attributes.enabledNEW_RELIC_ATTRIBUTES_ENABLED
      attributes.excludeNEW_RELIC_ATTRIBUTES_EXCLUDE
      attributes.includeNEW_RELIC_ATTRIBUTES_INCLUDE
      browser_monitoring.attributes.enabledNEW_RELIC_BROWSER_MONITORING_ATTRIBUTES_ENABLED
      browser_monitoring.attributes.excludeNEW_RELIC_BROWSER_MONITORING_ATTRIBUTES_EXCLUDE
      browser_monitoring.attributes.includeNEW_RELIC_BROWSER_MONITORING_ATTRIBUTES_INCLUDE
      error_collector.attributes.enabledNEW_RELIC_ERROR_COLLECTOR_ATTRIBUTES_ENABLED
      error_collector.attributes.excludeNEW_RELIC_ERROR_COLLECTOR_ATTRIBUTES_EXCLUDE
      error_collector.attributes.includeNEW_RELIC_ERROR_COLLECTOR_ATTRIBUTES_INCLUDE
      span_events.attributes.enabledNEW_RELIC_SPAN_EVENTS_ATTRIBUTES_ENABLED
      span_events.attributes.excludeNEW_RELIC_SPAN_EVENTS_ATTRIBUTES_EXCLUDE
      span_events.attributes.includeNEW_RELIC_SPAN_EVENTS_ATTRIBUTES_INCLUDE
      transaction_events.attributes.enabledNEW_RELIC_TRANSACTION_EVENTS_ATTRIBUTES_ENABLED
      transaction_events.attributes.excludeNEW_RELIC_TRANSACTION_EVENTS_ATTRIBUTES_EXCLUDE
      transaction_events.attributes.includeNEW_RELIC_TRANSACTION_EVENTS_ATTRIBUTES_INCLUDE
      transaction_segments.attributes.enabledNEW_RELIC_TRANSACTION_SEGMENTS_ATTRIBUTES_ENABLED
      transaction_segments.attributes.excludeNEW_RELIC_TRANSACTION_SEGMENTS_ATTRIBUTES_EXCLUDE
      transaction_segments.attributes.includeNEW_RELIC_TRANSACTION_SEGMENTS_ATTRIBUTES_INCLUDE
      transaction_tracer.attributes.enabledNEW_RELIC_TRANSACTION_TRACER_ATTRIBUTES_ENABLED
      transaction_tracer.attributes.excludeNEW_RELIC_TRANSACTION_TRACER_ATTRIBUTES_EXCLUDE
      transaction_tracer.attributes.includeNEW_RELIC_TRANSACTION_TRACER_ATTRIBUTES_INCLUDE
  • νŠΈλžœμž­μ…˜ λ°μ½”λ ˆμ΄ν„°μ— 비동기 생성기 지원 μΆ”κ°€

    • μ΄μ „μ—λŠ” νŠΈλžœμž­μ…˜ λ°μ½”λ ˆμ΄ν„°κ°€ 비동기 생성기λ₯Ό κ°μ‹ΈλŠ” 것을 μ§€μ›ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. 이 지원이 μΆ”κ°€λ˜μ–΄ 이제 비동기 생성기 νŠΈλžœμž­μ…˜μ΄ 이벀트 루프 λŒ€κΈ° μ‹œκ°„κ³Ό 기타 톡계λ₯Ό μžλ™μœΌλ‘œ μΈ‘μ •ν•©λ‹ˆλ‹€.
  • AWS Bedrock μΈ‘μ •, λ‘œκ·Έμ— μΆ”κ°€ λͺ¨λΈμ— λŒ€ν•œ 지원 μΆ”κ°€

    • λ‹€μŒ μΆ”κ°€ λͺ¨λΈμ„ μ§€μ›ν•˜λ„λ‘ botocore 및 aiobotocore 톡해 AWS Bedrock μΈ‘μ •, 계츑을 μ—…λ°μ΄νŠΈν•©λ‹ˆλ‹€.

      • ν΄λ‘œλ“œ μ†Œλ„€νŠΈ 3+ λͺ¨λΈ
      • μ§€μ—­μœΌλ‘œ 접두사가 뢙은 λͺ¨λΈ(μ§€μ—­ 인식)
  • μƒˆλ‘œμš΄ Kinesis λ©”μ„œλ“œμ— λŒ€ν•œ μΈ‘μ •, 둜그 μΆ”κ°€

    • μƒˆλ‘œμš΄ AWS Kinesis λ©”μ„œλ“œλ₯Ό μ§€μ›ν•˜κΈ° μœ„ν•΄ botocore μΈ‘μ •, λ¦¬μ†ŒμŠ€ μΆ”κ°€

      • describe_account_settings
      • update_account_settings
      • update_max_record_size
      • update_stream_warm_throughput

버그 μˆ˜μ •

  • aiomysql ConnectionPoolμ—μ„œ RecursionError λ°©μ§€

    • μ΄μ „μ—λŠ” ν’€ 연결을 μ‚¬μš©ν•  λ•Œ aiomysql μ—μ„œ RecursionError 이 λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. 반볡적인 λž˜ν•‘μœΌλ‘œ 인해 ν’€λ§λœ μ—°κ²° μ£Όμœ„μ— κΉŠμ€ ObjectProxy 체인이 μƒμ„±λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이 λ¬Έμ œλŠ” ν•΄κ²°λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • kombu 의 ν”„λ‘œλ“€μ„œμ—μ„œ 속성이 μ œλŒ€λ‘œ μ „λ‹¬λ˜μ§€ μ•ŠλŠ” 버그λ₯Ό μˆ˜μ •ν–ˆμŠ΅λ‹ˆλ‹€.

    • kombu.messaging.Producer.publish() 에 λŒ€ν•œ μΈ‘μ •, κ³„μΈ‘μœΌλ‘œ 인해 속성이 μ‹€μˆ˜λ‘œ 사전 내뢀에 μ€‘μ²©λ˜μ–΄ 속성이 잘λͺ»λœ μœ„μΉ˜μ— 있고 λ‹€μš΄μŠ€νŠΈλ¦Ό νŒ¨ν‚€μ§€μ—μ„œ μ½νžˆμ§€ μ•ŠλŠ” 버그λ₯Ό μˆ˜μ •ν–ˆμŠ΅λ‹ˆλ‹€.
  • shutdown_agent 이 μˆ˜ν™• μŠ€λ ˆλ“œ λ‚΄μ—μ„œ 호좜될 λ•Œ λ°œμƒν•˜λŠ” 였λ₯˜λ₯Ό μˆ˜μ •ν•©λ‹ˆλ‹€.

    • μ΄μ „μ—λŠ” shutdown_agent μˆ˜ν™• μŠ€λ ˆλ“œ λ‚΄μ—μ„œ 호좜되면 RuntimeError 이 λ°œμƒν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ μΆ©λŒμ„ λ°©μ§€ν•˜κΈ° μœ„ν•œ 보호 μž₯μΉ˜κ°€ μΆ”κ°€λ˜μ–΄ λ¬Έμ œκ°€ ν•΄κ²°λ©λ‹ˆλ‹€.

μ§€μ§€ μ„±λͺ…

μ΅œμ‹  μ—μ΄μ „νŠΈ 버전이 μΆœμ‹œλ˜λ©΄ μ¦‰μ‹œ μ—…λ°μ΄νŠΈν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. μ΅œμ‹  λ²„μ „μœΌλ‘œ μ—…κ·Έλ ˆμ΄λ“œν•  수 μ—†λŠ” 경우, μ—μ΄μ „νŠΈλ₯Ό 90일 이내 λ²„μ „μœΌλ‘œ μ—…λ°μ΄νŠΈν•˜μ„Έμš”. μ—μ΄μ „νŠΈμ—κ²Œ μ΅œμ‹  정보λ₯Ό μ œκ³΅ν•˜λŠ” 방법에 λŒ€ν•΄ μžμ„Ένžˆ μ•Œμ•„λ³΄μ„Έμš”.

μ—μ΄μ „νŠΈ 릴리슀 및 지원 λ‚ μ§œμ— λŒ€ν•œ μ •λ³΄λŠ” 뉴렐릭 λŒμ–΄ λ‹ΉκΈ°λŠ” μ—μ΄μ „νŠΈ EOL 정책을 μ°Έμ‘°ν•˜μ„Έμš”.

October 6
Python agent v11.0.1

Notes

이 λŒμ–΄ λ‹ΉκΈ°λŠ” μ—μ΄μ „νŠΈ λ¦΄λ¦¬μŠ€λŠ” Django μΈ‘μ •μ˜ 초기 ν™œμ„±ν™”, μ†ŒμŠ€, λ¬΄μ‹œλ˜λŠ” max_samples_stored 에 λŒ€ν•œ μ„œλ²„ μΈ‘ μž¬μ •μ˜ 및 Python trace_cache.pop() 의 좩돌 방지에 λŒ€ν•œ μˆ˜μ • 사항을 μ œκ³΅ν•©λ‹ˆλ‹€.

λŒμ–΄μ˜€κΈ° νŒ¨ν‚€μ§€ 색인을 톡해 easy_install/pip/distribute μ‚¬μš©ν•˜μ—¬ μ—μ΄μ „νŠΈλ₯Ό μ„€μΉ˜ν•˜κ±°λ‚˜ 뉴렐릭 λ‹€μš΄λ‘œλ“œ μ‚¬μ΄νŠΈ μ—μ„œ 직접 λ‹€μš΄λ‘œλ“œν•˜μ„Έμš”.

버그 μˆ˜μ •

  • Django μΈ‘μ •, 둜그의 μ‘°κΈ° ν™œμ„±ν™” λ°©μ§€

    • Django μΈ‘μ •μ—μ„œ application_settings() 에 λŒ€ν•œ ν˜ΈμΆœμ„ μ œκ±°ν•˜μ—¬ pre-fork의 초기 ν™œμ„±ν™” κ΄€λ ¨ 문제λ₯Ό λ°©μ§€ν•©λ‹ˆλ‹€.
  • μ„œλ²„ 섀정을 둜컬 μ„€μ • 동기화 문제 μˆ˜μ •

    • μ΄λŠ” event_harvest_config.harvest_limits.* 섀정이 *.max_samples_stored μ„€μ •μœΌλ‘œ 인해 더 이상 μ‚¬μš©λ˜μ§€ μ•Šμ„ λ•Œ λ°œμƒν•œ 버그λ₯Ό μˆ˜μ •ν•©λ‹ˆλ‹€. 일뢀 μ„œλ²„μΈ‘ 섀정이 ν΄λΌμ΄μ–ΈνŠΈμΈ‘ 섀정을 μž¬μ •μ˜ν•˜μ§€ μ•Šμ•„ μ‚¬μš©μžκ°€ 이λ₯Ό λΉ„ν™œμ„±ν™”ν–ˆμŒμ—λ„ λΆˆκ΅¬ν•˜κ³  데이터가 μˆ˜μ§‘κΈ°λ‘œ μ „μ†‘λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • μΆ©λŒλ‘œλΆ€ν„° λ³΄ν˜Έν•˜μ„Έμš” trace_cache.pop()

    • ContextOf ν΄λž˜μŠ€μ—μ„œ κΈ°λ³Έκ°’ 없이 pop(key) 톡해 trace_cache 에 μ•ˆμ „ν•˜μ§€ μ•Šμ€ μ•‘μ„ΈμŠ€κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. μ‚¬μ „μ˜ weakref 이 이미 κ°€λΉ„μ§€ μˆ˜μ§‘λœ 경우 좩돌이 λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.

μ§€μ§€ μ„±λͺ…

μ΅œμ‹  μ—μ΄μ „νŠΈ 버전이 μΆœμ‹œλ˜λ©΄ μ¦‰μ‹œ μ—…λ°μ΄νŠΈν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. μ΅œμ‹  λ²„μ „μœΌλ‘œ μ—…κ·Έλ ˆμ΄λ“œν•  수 μ—†λŠ” 경우, μ—μ΄μ „νŠΈλ₯Ό 90일 이내 λ²„μ „μœΌλ‘œ μ—…λ°μ΄νŠΈν•˜μ„Έμš”. μ—μ΄μ „νŠΈμ—κ²Œ μ΅œμ‹  정보λ₯Ό μ œκ³΅ν•˜λŠ” 방법에 λŒ€ν•΄ μžμ„Ένžˆ μ•Œμ•„λ³΄μ„Έμš”.

μ—μ΄μ „νŠΈ 릴리슀 및 지원 λ‚ μ§œμ— λŒ€ν•œ μ •λ³΄λŠ” 뉴렐릭 λŒμ–΄ λ‹ΉκΈ°λŠ” μ—μ΄μ „νŠΈ EOL 정책을 μ°Έμ‘°ν•˜μ„Έμš”.

September 25
Python agent v11.0.0

Notes

Caution

이 λ²„μ „μ˜ μ—μ΄μ „νŠΈλŠ” μ² νšŒλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

이번 릴리슀 μ—μ΄μ „νŠΈμ—λŠ” λ‹€μŒκ³Ό 같은 λ³€κ²½ 사항이 μ μš©λ©λ‹ˆλ‹€.

  • λŒμ–΄λ‹ΉκΉ€ 3.7에 λŒ€ν•œ 지원 제거
  • λ‹€μ–‘ν•œ API 및 섀정을 μ œκ±°ν•˜κ±°λ‚˜ 더 이상 μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
  • aioredis μΈ‘μ •, 둜그 μ‚¬μš© 쀑단
  • setuptools 의 μ΅œμ†Œ 지원 버전을 μ˜¬λ¦½λ‹ˆλ‹€. setuptools_scm
  • AutoGen에 λŒ€ν•œ μƒˆ μΈ‘μ •, 둜그λ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
  • Pyzeebe에 λŒ€ν•œ μƒˆλ‘œμš΄ μΈ‘μ •, 둜그λ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
  • μƒˆλ‘œμš΄ MCP(λͺ¨λΈ μ»¨ν…μŠ€νŠΈ ν”„λ‘œν† μ½œ)λΌλŠ” μ΄λ¦„μ˜ span을 μΆ”κ°€ν•©λ‹ˆλ‹€.
  • psycopgμ—μ„œ 좩돌이 λ°œμƒν•˜λŠ” 문제λ₯Ό ν•΄κ²°ν•©λ‹ˆλ‹€.
  • AI λͺ¨λ‹ˆν„°λ§μ΄ ν™œμ„±ν™”λœ κ²½μš°μ—λ§Œ MCP 슀팬이 κΈ°λ‘λ˜λ„λ‘ 보μž₯ν•©λ‹ˆλ‹€.

λŒμ–΄μ˜€κΈ° νŒ¨ν‚€μ§€ 색인을 톡해 easy_install/pip/distribute μ‚¬μš©ν•˜μ—¬ μ—μ΄μ „νŠΈλ₯Ό μ„€μΉ˜ν•˜κ±°λ‚˜ 뉴렐릭 λ‹€μš΄λ‘œλ“œ μ‚¬μ΄νŠΈ μ—μ„œ 직접 λ‹€μš΄λ‘œλ“œν•˜μ„Έμš”.

제거된 κΈ°λŠ₯

  • λŒμ–΄λ‹ΉκΉ€ 3.7에 λŒ€ν•œ 지원 제거

    • λŒμ–΄3.7은 2023λ…„ 6μ›” 27일에 λ‹¨μ’…λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ ‘μ°©μ œ μ—μ΄μ „νŠΈκ°€ 이에 λŒ€ν•œ 지원을 μ€‘λ‹¨ν–ˆμŠ΅λ‹ˆλ‹€.
  • λ‹€μ–‘ν•œ 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠλŠ” APIλ₯Ό μ œκ±°ν•©λ‹ˆλ‹€.

  • λ‹€μ–‘ν•œ 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠλŠ” 섀정을 μ œκ±°ν•©λ‹ˆλ‹€.

    • λ‹€μŒ 섀정이 μ œκ±°λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

      κ΅¬ν˜• 섀정ꡐ체 μ„€μ •
      transaction_tracer.capture_attributestransaction_tracer.attributes.enabled
      error_collector.capture_attributeserror_collector.attributes.enabled
      browser_monitoring.capture_attributesbrowser_monitoring.attributes.enabled
      analytics_events.enabledtransaction_events.enabled
      analytics_events.capture_attributestransaction_events.attributes.enabled
      error_collector.ignore_errorserror_collector.ignore_classes
      strip_exception_messages.whiteliststrip_exception_messages.allowlist
      ssl이제 이 ν•­λͺ©μ€ true 에 ν•˜λ“œμ½”λ”©λ˜μ–΄ μ„€μ • μ˜΅μ…˜μ—μ„œ μ œκ±°λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
      ignored_paramsλŒ€μ‹  newrelic.attributes.exclude = request.parameters.{name} μ‚¬μš©ν•˜μ„Έμš”. 각 μš”μ²­ ν…œν”Œλ¦Ώ, ν‚€λ₯Ό μ‰Όν‘œλ‘œ κ΅¬λΆ„ν•˜μ—¬ newrelic.attributes.exclude λͺ©λ‘μ— μΆ”κ°€ν•©λ‹ˆλ‹€. ν‚€ μ•žμ— request.parameters κΌ­ μΆ”κ°€ν•˜μ„Έμš”.
      agent_limits.merge_stats_maximum이제 μ„œλ²„ μΈ‘ ꡬ성을 μ„ ν˜Έν•˜μ—¬ 이 λ¬Έμ œλŠ” μ™„μ „νžˆ λ¬΄μ‹œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

더 이상 μ‚¬μš©λ˜μ§€ μ•ŠλŠ” κΈ°λŠ₯

  • aioredis 에 λŒ€ν•œ μΈ‘μ •, μ‚¬μš©μ΄ 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

    • aioredis νŒ¨ν‚€μ§€λŠ” 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμœΌλ©°, 이제 ν•˜μœ„ λͺ¨λ“ˆ redis.asyncio ν¬ν•¨λœ redisκ°€ μ‚¬μš©λ©λ‹ˆλ‹€. 결과적으둜 aioredis 에 λŒ€ν•œ μΈ‘μ •, 계츑도 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λŒ€μ‹  redis 라이브러리λ₯Ό μ‚¬μš©ν•˜μ„Έμš”. 이 μΈ‘μ •, λ‘œκ·ΈλŠ” ν–₯ν›„ λ¦΄λ¦¬μŠ€μ—μ„œ 제거될 μ˜ˆμ •μž…λ‹ˆλ‹€.
  • λ‹€λ₯Έ μ–Έμ–΄ μ—μ΄μ „νŠΈμ™€ μΌμΉ˜ν•˜λ„λ‘ 일뢀 κΈ°μ‘΄ μˆ˜ν™• 섀정을 더 이상 μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

    • λ‹€λ₯Έ μ–Έμ–΄ μ—μ΄μ „νŠΈμ˜ κ·œμΉ™κ³Ό 일관성을 μœ μ§€ν•˜κΈ° μœ„ν•΄ λ‹€μŒ μˆ˜ν™• 섀정은 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

      κ΅¬ν˜• 섀정ꡐ체 μ„€μ •
      event_harvest_config.harvest_limits.analytic_event_datatransaction_events.max_samples_stored
      event_harvest_config.harvest_limits.span_event_dataspan_events.max_samples_stored
      event_harvest_config.harvest_limits.error_event_dataerror_collector.max_event_samples_stored
      event_harvest_config.harvest_limits.custom_event_datacustom_insights_events.max_samples_stored
      event_harvest_config.harvest_limits.log_event_dataapplication_logging.forwarding.max_samples_stored

      μ΄λŠ” μ΄λŸ¬ν•œ μ„€μ •μ˜ 이름을 *.max_samples_stored μ—μ„œ event_harvest_config.harvest_limits.* ν˜•μ‹μœΌλ‘œ λ³€κ²½ν•œ 이전 λ³€κ²½ 사항을 되돌린 κ²ƒμž…λ‹ˆλ‹€. 이 결정은 λ’€μ§‘ν˜”κ³ , μ›λž˜ 섀정은 μ΄λŸ¬ν•œ μ„€μ • 이름을 λ³€κ²½ν•˜μ§€ μ•Šμ€ λ‹€λ₯Έ μ–Έμ–΄ μ—μ΄μ „νŠΈμ™€ μΌμΉ˜ν•˜λ„λ‘ λ³΅μ›λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠλŠ” 섀정은 ν˜„μž¬λ‘œλŠ” 계속 μž‘λ™ν•˜μ§€λ§Œ, ν–₯ν›„ λ¦΄λ¦¬μŠ€μ—μ„œλŠ” 제거될 μ˜ˆμ •μž…λ‹ˆλ‹€.

  • WSGI ν™˜κ²½ 사전을 톡해 μ—μ΄μ „νŠΈ 섀정을 더 이상 μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

    • μ΄μ „μ—λŠ” WSGI environ 사전을 톡해 ꡬ성할 수 μžˆμ—ˆλ˜ λ‹€μŒ 섀정은 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. ν™˜κ²½ λ³€μˆ˜λ‚˜ ꡬ성 νŒŒμΌμ„ 톡해 μ΄λŸ¬ν•œ 섀정을 κ΅¬μ„±ν•˜μ„Έμš”.

      • newrelic.set_background_task
      • newrelic.suppress_apdex_metric
      • newrelic.suppress_transaction_trace
      • newrelic.capture_request_params
      • newrelic.disable_browser_autorum
  • setuptools<61.2 λ˜λŠ” λ₯Ό μ‚¬μš©ν•˜μ—¬ μ—μ΄μ „νŠΈλ₯Ό λΉŒλ“œν•˜λŠ” 데 λŒ€ν•œ 지원을 더 이상 μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. setuptools_scm<6.4

    • setuptools 및 setuptools_scm 의 μ΅œμ†Œ 지원 버전이 각각 61.2 및 6.4 으둜 μ¦κ°€ν–ˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” νŒ¨ν‚€μ§€ 메타데이터 ꡬ성 및 λΉŒλ“œ 지침에 pyproject.toml λ₯Ό μ‚¬μš©ν•  수 μžˆλ„λ‘ μ§€μ›ν•˜κΈ° μœ„ν•œ κ²ƒμž…λ‹ˆλ‹€. 이제 μ—μ΄μ „νŠΈλŠ” 더 ν˜„λŒ€μ μΈ λΉŒλ“œ λ„κ΅¬λ‘œ λΉŒλ“œλ  수 있으며, 더 이상 pyproject.toml 파일이 μ—†λ‹€λŠ” κ²½κ³ λ₯Ό λ°œμƒμ‹œν‚€μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
    • 이 λ³€κ²½ 사항은 νŒ¨ν‚€μ§€ newrelic.__version__ 및 newrelic.__version_tuple__ 에 μƒˆλ‘œμš΄ 버전 속성을 μΆ”κ°€ν•©λ‹ˆλ‹€. 이λ₯Ό 톡해 λŸ°νƒ€μž„μ— μ—μ΄μ „νŠΈ 버전을 ν”„λ‘œκ·Έλž˜λ° λ°©μ‹μœΌλ‘œ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

μƒˆλ‘œμš΄ κΈ°λŠ₯

  • AutoGen에 λŒ€ν•œ μƒˆ μΈ‘μ •, 둜그λ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.

    • AutoGen의 μ—μ΄μ „νŠΈ 및 도ꡬ에 λŒ€ν•œ μΈ‘μ •, 둜그(λͺ…λͺ…λœ λ²”μœ„ 및 μ‚¬μš©μž μ •μ˜ Llm 이벀트)λ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
  • Pyzeebe에 λŒ€ν•œ μƒˆλ‘œμš΄ μΈ‘μ •, 둜그λ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.

    • Pyzeebe에 λŒ€ν•œ μžλ™ μΈ‘μ •, λ¦¬μ†ŒμŠ€ 및 ν”„λ ˆμž„μ›Œν¬ κ΄€λ ¨ μ—μ΄μ „νŠΈ 속성을 μΆ”κ°€ν•©λ‹ˆλ‹€.
  • μƒˆλ‘œμš΄ MCP(λͺ¨λΈ μ»¨ν…μŠ€νŠΈ ν”„λ‘œν† μ½œ)λΌλŠ” μ΄λ¦„μ˜ span을 μΆ”κ°€ν•©λ‹ˆλ‹€.

    • Streamable HTTPλ₯Ό μ§€μ›ν•˜κΈ° μœ„ν•΄ 도ꡬ κ΄€λ¦¬μžλ₯Ό 톡해 μˆ˜ν–‰λœ MCP(λͺ¨λΈ μ»¨ν…μŠ€νŠΈ ν”„λ‘œν† μ½œ) 도ꡬ ν˜ΈμΆœμ— λŒ€ν•œ μƒˆλ‘œμš΄ λͺ…λͺ…λœ μŠ€νŒ¬μ„ μΆ”κ°€ν•©λ‹ˆλ‹€.

버그 μˆ˜μ •

  • psycopg>=3.2.0 μ—μ„œ 호좜 μ‹œ λ°œμƒν•˜λŠ” μΆ©λŒμ„ μˆ˜μ •ν•©λ‹ˆλ‹€. as_string()

    • as_string() λ©”μ„œλ“œκ°€ 더 이상 인수λ₯Ό ν•„μš”λ‘œ ν•˜μ§€ μ•Šμ•„ 잠재적인 μΆ©λŒμ„ μΌμœΌν‚€λŠ” psycopg>=3.2.0 의 문제λ₯Ό ν•΄κ²°ν•©λ‹ˆλ‹€. 이 λ¬Έμ œλŠ” ν•΄κ²°λ˜μ—ˆμœΌλ©°, 이 λ©”μ„œλ“œμ˜ 두 κ°€μ§€ μ„œλͺ…이 λͺ¨λ‘ μ§€μ›λ©λ‹ˆλ‹€.
  • AI λͺ¨λ‹ˆν„°λ§μ΄ ν™œμ„±ν™”λœ κ²½μš°μ—λ§Œ MCP(λͺ¨λΈ μ»¨ν…μŠ€νŠΈ ν”„λ‘œν† μ½œ) 슀팬이 κΈ°λ‘λ˜λ„λ‘ 보μž₯ν•©λ‹ˆλ‹€.

    • MCP(λͺ¨λΈ μ»¨ν…μŠ€νŠΈ ν”„λ‘œν† μ½œ) μŠ€νŒ¬μ€ μ„€μ • ai_monitoring.enabled ν™œμ„±ν™”λœ κ²½μš°μ—λ§Œ κΈ°λ‘λ©λ‹ˆλ‹€.

μ§€μ§€ μ„±λͺ…

μ΅œμ‹  μ—μ΄μ „νŠΈ 버전이 μΆœμ‹œλ˜λ©΄ μ¦‰μ‹œ μ—…λ°μ΄νŠΈν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. μ΅œμ‹  λ²„μ „μœΌλ‘œ μ—…κ·Έλ ˆμ΄λ“œν•  수 μ—†λŠ” 경우, μ—μ΄μ „νŠΈλ₯Ό 90일 이내 λ²„μ „μœΌλ‘œ μ—…λ°μ΄νŠΈν•˜μ„Έμš”. μ—μ΄μ „νŠΈμ—κ²Œ μ΅œμ‹  정보λ₯Ό μ œκ³΅ν•˜λŠ” 방법에 λŒ€ν•΄ μžμ„Ένžˆ μ•Œμ•„λ³΄μ„Έμš”.

μ—μ΄μ „νŠΈ 릴리슀 및 지원 λ‚ μ§œμ— λŒ€ν•œ μ •λ³΄λŠ” 뉴렐릭 λŒμ–΄ λ‹ΉκΈ°λŠ” μ—μ΄μ „νŠΈ EOL 정책을 μ°Έμ‘°ν•˜μ„Έμš”.

September 4
Python agent v10.17.0

Notes

이번 릴리슀 μ—μ΄μ „νŠΈμ—λŠ” λ‹€μŒμ— λŒ€ν•œ 지원이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

  • Celery의 μ‚¬μš©μž μ •μ˜ μž‘μ—…
  • κ·Έλž˜ν•€-Django λͺ¨λ‹ˆν„°λ§
  • Django의 미듀웨어 필터링
  • AWS Bedrock Converse API
  • W3CTraceParent 헀더 μƒ˜ν”Œλ§ ν”Œλž˜κ·Έ

이 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” λ‹€μŒκ³Ό 같은 μˆ˜μ • 사항도 μ œκ³΅λ©λ‹ˆλ‹€.

  • GraphQLμ—μ„œ κ°€μž₯ κΉŠμ€ 고유 κ²½λ‘œμ— λŒ€ν•œ 보호 μž₯치
  • μ›Ή URL μš”μ²­ ꡬ문 뢄석을 μœ„ν•œ λ³΄μ•ˆ 쑰치
  • ElasticSearch 및 GraphQL에 λŒ€ν•œ λŒ€μ²΄ trace.settings==None
  • 비동기 ElasticSearch ν΄λΌμ΄μ–ΈνŠΈ λͺ©λ‘μ—μ„œ options λ©”μ„œλ“œ 제거

λŒμ–΄μ˜€κΈ° νŒ¨ν‚€μ§€ 색인을 톡해 easy_install/pip/distribute μ‚¬μš©ν•˜μ—¬ μ—μ΄μ „νŠΈλ₯Ό μ„€μΉ˜ν•˜κ±°λ‚˜ 뉴렐릭 λ‹€μš΄λ‘œλ“œ μ‚¬μ΄νŠΈ μ—μ„œ 직접 λ‹€μš΄λ‘œλ“œν•˜μ„Έμš”.

μƒˆλ‘œμš΄ κΈ°λŠ₯

  • Celeryμ—μ„œ μ‚¬μš©μž μ •μ˜ μž‘μ—…μ— λŒ€ν•œ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€.

    • Celery μ—μ„œ μ‚¬μš©μž μ •μ˜ μž‘μ—… ν΄λž˜μŠ€μ— λŒ€ν•œ λͺ¨λ‹ˆν„°λ§ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€. μ΄μ „μ—λŠ” κΈ°λ³Έ μž‘μ—… 클래슀λ₯Ό μ‚¬μš©ν•˜λŠ” μž‘μ—…λ§Œ λͺ¨λ‹ˆν„°λ§ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. μ°Έκ³ : 이 λ²„μ „μ˜ λŒμ–΄λ‹ΉκΉ€ μ—μ΄μ „νŠΈλŠ” 더 이상 v5.2.0 미만의 Celery 버전을 μ§€μ›ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
  • Graphene-Django에 λŒ€ν•œ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€.

    • Graphene-Django 둜 μƒμ„±λœ 동기 μŠ€ν‚€λ§ˆμ— λŒ€ν•œ λͺ¨λ‹ˆν„°λ§ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€. μ΄μ „μ—λŠ” Graphene-Django둜 μƒμ„±λœ μŠ€ν‚€λ§ˆκ°€ λΆ€λΆ„μ μœΌλ‘œλ§Œ λͺ¨λ‹ˆν„°λ§λ˜μ–΄ GraphQL κ΄€λ ¨ 속성이 λˆ„λ½λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • Djangoμ—μ„œ 미듀웨어 필터링에 λŒ€ν•œ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€.

    • 이제 μ‚¬μš©μžλŠ” λͺ¨λ‹ˆν„°λ§ν•  Django 미듀웨어λ₯Ό 필터링할 수 μžˆμŠ΅λ‹ˆλ‹€. 이제 μ„Έ κ°€μ§€ μΆ”κ°€ 섀정이 μžˆμŠ΅λ‹ˆλ‹€.

      • instrumentation.middleware.django.enabled (기본값은 true μž…λ‹ˆλ‹€)
      • instrumentation.middleware.django.exclude
      • instrumentation.middleware.django.include

    μžμ„Έν•œ λ‚΄μš©κ³Ό μ˜ˆμ œλŠ” Django 미듀웨어 필터링 νŽ˜μ΄μ§€λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

  • AWS Bedrock Converse API에 λŒ€ν•œ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€.

    • 슀트리밍이 μ•„λ‹Œ Converse API에 λŒ€ν•œ λͺ¨λ‹ˆν„°λ§ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€. μ—¬κΈ°μ—λŠ” boto3 및 aioboto3 ν΄λΌμ΄μ–ΈνŠΈλ₯Ό μ‚¬μš©ν•˜μ—¬ μˆ˜ν–‰λœ converse μ±„νŒ… μ™„λ£Œ ν˜ΈμΆœμ— λŒ€ν•œ 지원이 ν¬ν•¨λ©λ‹ˆλ‹€.
  • W3CTraceParent 헀더 μƒ˜ν”Œλ§ ν”Œλž˜κ·Έμ— λŒ€ν•œ 지원을 μΆ”κ°€ν•©λ‹ˆλ‹€.

    • μ—…μŠ€νŠΈλ¦Ό μ„œλΉ„μŠ€κ°€ μƒ˜ν”Œλ§ ν”Œλž˜κ·Έκ°€ μ„€μ •λœ W3CTraceParent 헀더λ₯Ό 보내면 뉴렐릭은 currentResourcesλ₯Ό μƒ˜ν”Œλ§ν• μ§€ μ—¬λΆ€λ₯Ό κ²°μ •ν•  λ•Œ ν•΄λ‹Ή μƒ˜ν”Œλ§ 결정을 κ³ λ €ν•©λ‹ˆλ‹€.
  • 원격 λΆ€λͺ¨κ°€ μƒ˜ν”Œλ§λ˜μ—ˆλŠ”μ§€ 여뢀에 따라 μƒ˜ν”Œλ§ 결정에 λŒ€ν•œ 지원이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

    • 두 κ°€μ§€ μƒˆλ‘œμš΄ μ„€μ • μ˜΅μ…˜μ— λŒ€ν•œ 지원이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

      • distributed_tracing.sampler.remote_parent_sampled
      • distributed_tracing.sampler.remote_parent_not_sampled
    • default κΈ°λ³Έ λ™μž‘μ΄λ©° 이 λ³€κ²½ 이전과 λ™μΌν•˜κ²Œ λ™μž‘ν•©λ‹ˆλ‹€(νŠΈλžœμž­μ…˜μ„ μƒ˜ν”Œλ§ν• μ§€ μ—¬λΆ€λ₯Ό κ²°μ •ν•˜κΈ° μœ„ν•΄ μƒ˜ν”Œλ§ 결정을 μ μ‘ν˜• μƒ˜ν”Œλ§ μ•Œκ³ λ¦¬μ¦˜μ— 전달함).

    • always_on 즉, 원격 λΆ€λͺ¨κ°€ μƒ˜ν”Œλ§λ˜μ—ˆκ±°λ‚˜ μƒ˜ν”Œλ§λ˜μ§€ μ•Šμ€ νŠΈλ ˆμ΄μŠ€λŠ” 항상 μƒ˜ν”Œλ§λ©λ‹ˆλ‹€.

    • always_off 즉, 원격 λΆ€λͺ¨κ°€ μƒ˜ν”Œλ§λ˜μ—ˆκ±°λ‚˜ μƒ˜ν”Œλ§λ˜μ§€ μ•Šμ€ 원격 λΆ€λͺ¨κ°€ μžˆλŠ” νŠΈλ ˆμ΄μŠ€λŠ” μ ˆλŒ€ μƒ˜ν”Œλ§λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

버그 μˆ˜μ •

  • GraphQLμ—μ„œ κ°€μž₯ κΉŠμ€ 고유 κ²½λ‘œμ— λŒ€ν•œ 보호 κΈ°λŠ₯ μΆ”κ°€

    • 일뢀 μ‚¬μš©μžλŠ” GraphQL μ—μ„œ ν•„λ“œ 이름이 None λ°˜ν™˜ν•˜μ—¬ κ°€μž₯ κΉŠμ€ 고유 κ²½λ‘œκ°€ μƒμ„±λ˜μ§€ μ•ŠλŠ” 문제λ₯Ό κ²½ν—˜ν–ˆμŠ΅λ‹ˆλ‹€. 이 λ¬Έμ œλŠ” ν•΄κ²°λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • μ›Ή μš”μ²­ ꡬ문 뢄석을 μœ„ν•œ 보호 κΈ°λŠ₯ μΆ”κ°€

    • 일뢀 μ‚¬μš©μžλŠ” request_uri 잘λͺ» ν˜•μ‹ν™”λ˜μ—ˆκ±°λ‚˜ 잘λͺ»λœ 문자λ₯Ό ν¬ν•¨ν•˜κ³  μžˆμ–΄ ꡬ문 뢄석 였λ₯˜λ₯Ό κ²½ν—˜ν–ˆμŠ΅λ‹ˆλ‹€. μš”μ²­ ν—€λ”μ˜ request_uri 이 μœ νš¨ν•˜μ§€ μ•Šκ³  μ›λž˜ 제곡된 (μœ νš¨ν•œ) URLκ³Ό μΌμΉ˜ν•˜μ§€ μ•ŠλŠ” 경우 이 λ¬Έμ œκ°€ λ°œμƒν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 보호 μž₯μΉ˜λŠ” ν˜„μž¬ 뉴렐릭에 μ μš©λ˜μ—ˆμ§€λ§Œ, urllib μ—μ„œλŠ” 2025λ…„ 1μ›” 31일 이후에 μΆœμ‹œλœ 버전에 λŒ€ν•œ 이 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.
  • ElasticSearch 및 GraphQLμ—μ„œ μΆ©λŒμ„ μˆ˜μ •ν•©λ‹ˆλ‹€. trace.settings==None

    • trace.settings 이 None 인 경우 ElasticSearch에 λŒ€ν•œ μΈ‘μ •, λ¦¬μ†ŒμŠ€κ°€ μž‘λ™μ„ μ€‘λ‹¨ν–ˆμŠ΅λ‹ˆλ‹€. global_settings λŒ€μ•ˆμ΄ λ§ˆλ ¨λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” GraphQLμ—μ„œ λ°œκ²¬λ˜λŠ” λ™μΌν•œ 문제λ₯Ό ν•΄κ²°ν•©λ‹ˆλ‹€.
  • 비동기 ElasticSearch ν΄λΌμ΄μ–ΈνŠΈ λͺ©λ‘μ—μ„œ options λ©”μ„œλ“œ 제거

    • 이전 μΈ‘μ •, ElasticSearch의 계츑은 options 비동기 λ©”μ„œλ“œ λͺ©λ‘μ— 있기 λ•Œλ¬Έμ— 좩돌이 λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. 이 λ©”μ„œλ“œλŠ” μ–΄λ– ν•œ λ°μ΄ν„°μŠ€ν† μ–΄ μž‘μ—…/requests 도 μˆ˜ν–‰ν•˜μ§€ μ•ŠμœΌλ―€λ‘œ 더 이상 DatastoreTrace 에 λž˜ν•‘λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ§€μ§€ μ„±λͺ…

μ΅œμ‹  μ—μ΄μ „νŠΈ 버전이 μΆœμ‹œλ˜λ©΄ μ¦‰μ‹œ μ—…λ°μ΄νŠΈν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. μ΅œμ‹  λ²„μ „μœΌλ‘œ μ—…κ·Έλ ˆμ΄λ“œν•  수 μ—†λŠ” 경우, μ—μ΄μ „νŠΈλ₯Ό 90일 이내 λ²„μ „μœΌλ‘œ μ—…λ°μ΄νŠΈν•˜μ„Έμš”. μ—μ΄μ „νŠΈμ—κ²Œ μ΅œμ‹  정보λ₯Ό μ œκ³΅ν•˜λŠ” 방법에 λŒ€ν•΄ μžμ„Ένžˆ μ•Œμ•„λ³΄μ„Έμš”.

μ—μ΄μ „νŠΈ 릴리슀 및 지원 λ‚ μ§œμ— λŒ€ν•œ μ •λ³΄λŠ” 뉴렐릭 λŒμ–΄ λ‹ΉκΈ°λŠ” μ—μ΄μ „νŠΈ EOL 정책을 μ°Έμ‘°ν•˜μ„Έμš”.

Copyright Β© 2025 New Relic Inc.

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