• 로그인

사용자의 편의를 위해 제공되는 기계 번역입니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

accept_distributed_trace_payload(Python 에이전트 API)

통사론

newrelic.agent.accept_distributed_trace_payload(payload, transport_type='HTTP')

이 방법은 분산 추적 내에서 트랜잭션을 연결하는 데 사용되는 페이로드를 수락하는 데 사용됩니다.

요구 사항

Python 에이전트 버전 4.2.0.100 이상.

주의

이 API는 더 이상 사용되지 않습니다. 대신 newrelic.agent.accept_distributed_trace_headers를 사용하세요.

분산 추적을 활성화 해야 합니다.

설명

이 호출을 사용하는 방법에 대한 컨텍스트를 보려면 먼저 파트너 API 호출 create_distributed_trace_payload에이전트 API로 분산 추적 사용을 읽으십시오.

이 호출은 create_distributed_trace_payload 에 의해 생성된 분산 추적 페이로드를 구문 분석하여 트랜잭션을 연결하는 데 사용됩니다.

매개변수

매개변수

설명

payload

사전 또는 문자열

필수의. 수락할 페이로드입니다.

운송 유형
_

선택사항, 기본값은 HTTP 입니다. 이 페이로드를 보낸 전송 유형입니다. HTTP , HTTPS , Kafka , JMS , IronMQ , AMQP , Queue 또는 Other 중 하나여야 합니다.

반환 값

성공하면 True 을 반환합니다.

실패하면 False 을 반환합니다. 페이로드 수락은 다음과 같은 몇 가지 이유로 실패할 수 있습니다.

  • 현재 거래가 활성화되어 있지 않습니다.
  • Accept가 트랜잭션 범위 밖에서 호출되었습니다.
  • 페이로드가 비어 있습니다.
  • 분산 추적을 사용할 수 없습니다.
  • accept_distributed_trace_payload 이전이 아니라 create_distributed_trace_payload 이후에 호출되었습니다.
  • accept_distributed_trace_payload 단일 트랜잭션에서 여러 번 호출되었습니다.
  • 페이로드를 구문 분석할 수 없습니다.
  • 페이로드가 신뢰할 수 없는 계정에서 전송되었습니다.

백그라운드 작업 내 분산 추적 페이로드 수락

백그라운드 작업에서 accept_distributed_trace_payload 을 사용하는 예:

@newrelic.agent.background_task()
def handle(request):
payload = request.headers.get('newrelic')
if payload:
newrelic.agent.accept_distributed_trace_payload(payload)
_do_some_work()

대기열에서 소비

accept_distributed_trace_payload 을 사용하고 각 메시지에 대한 백그라운드 작업 을 만드는 예:

import newrelic.agent
newrelic.agent.initialize('newrelic.ini')
application = newrelic.agent.register_application(timeout=10.0)
def main(queue):
for message in queue.consume():
with newrelic.agent.BackgroundTask(application, 'Queue Consume'):
payload = message.headers.get('newrelic')
newrelic.agent.accept_distributed_trace_payload(payload,
transport_type='Queue')
_process_message(message)
Copyright © 2022 New Relic Inc.

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