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

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

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

문제 신고

message_transaction(파이썬 에이전트 API)

통사론

newrelic.agent.message_transaction(library, destination_type, destination_name, application, routing_key=None, exchange_type=None, headers=None, queue_name=None, reply_to=None, correlation_id=None)

보고 메시지는 트랜잭션으로 기능합니다.

요구 사항

에이전트 버전 2.88.0.72 이상.

설명

이 데코레이터는 메시징 기능의 데코레이터로 사용할 수 있는 MessageTransactionWrapper일부 를 반환합니다. 사용되는 경우 반환된 데코레이터는 메시지 트랜잭션 및 해당 메시지 관련 속성 을 기록합니다.

데코레이터가 애플리케이션에서 작동하지 않으면 다음 중 하나를 사용할 수 있습니다.

  • 컨텍스트 관리자 : 컨텍스트 관리자 양식은 MessageTransaction 입니다. 데코레이터와 동일한 매개변수를 사용합니다.
  • 래퍼 : 래퍼 형식은 MessageTransactionWrapper 입니다. 데코레이터를 사용하지 않고 래핑된 함수를 반환하는 데 사용할 수 있습니다.
  • 경로 기반 래퍼 : 경로 기반 래퍼 형식은 wrap_message_transaction 입니다. 이것은 원숭이 패치를 통해 주어진 객체에 MessageTransactionWrapper 을 적용합니다. 데코레이터와 동일한 매개변수와 추가 moduleobject_path 매개변수를 사용합니다.

이러한 다른 호출을 사용해야 하는 경우에 대한 설명은 다른 호출 형식 을 참조하십시오. 호출 예는 를 참조하십시오.

매개변수

message_transaction 및 MessageTransaction에 대한 매개변수

newrelic.agent.message_transaction(library, destination_type, destination_name, application, routing_key=None, exchange_type=None, headers=None, queue_name=None, reply_to=None, correlation_id=None)
newrelic.agent.MessageTransaction(library, destination_type, destination_name, application, routing_key=None, exchange_type=None, headers=None, queue_name=None, reply_to=None, correlation_id=None)

데코레이터와 컨텍스트 관리자는 다음 매개변수를 사용합니다.

매개변수

설명

library

문자열 또는 함수

필수의. 사용 중인 메시지 브로커의 이름(또는 유형)입니다. 그것을 정의하는 문자열이나 그것을 반환하는 함수를 전달하십시오.

destination_type

문자열 또는 함수

필수의. 작업의 대상이 되는 대상 유형입니다. 그것을 정의하는 문자열이나 그것을 반환하는 함수를 전달하십시오. 일반적으로 Exchange 또는 Queue 입니다.

destination_name

문자열 또는 함수

필수의. 작업의 대상이 되는 대상의 이름입니다. 그것을 정의하는 문자열이나 그것을 반환하는 함수를 전달하십시오.

application

애플리케이션

필수의. application 에서 반환된 애플리케이션 인스턴스.

routing_key

문자열 또는 함수

선택 과목. 메시지의 라우팅 키입니다.

exchange_type

문자열 또는 함수

선택 과목. 메시지의 교환 유형입니다.

headers

사전 또는 기능

선택 과목. 메시지의 헤더입니다.

queue_name

문자열 또는 함수

선택 과목. 메시지의 대기열 이름 속성입니다.

reply_to

문자열 또는 함수

선택 과목. 메시지의 replyTo 속성입니다.

correlation_id

문자열 또는 함수

선택 과목. 메시지의 correlationID 속성입니다.

MessageTransactionWrapper의 매개변수

newrelic.agent.MessageTransactionWrapper(wrapped, library, destination_type, destination_name, application, routing_key=None, exchange_type=None, headers=None, queue_name=None, reply_to=None, correlation_id=None)

MessageTransactionWrapper 은 이 wrapped 매개변수 외에 데코레이터 와 동일한 매개변수를 모두 사용합니다.

매개변수

설명

wrapped

기능

필수의. 메시지 브로커 시간을 나타내는 메시징 기능입니다.

wrap_message_transaction 매개변수

newrelic.agent.wrap_message_transaction(module, object_path, library, destination_type, destination_name, application, routing_key=None, exchange_type=None, headers=None, queue_name=None, reply_to=None, correlation_id=None)

module 매개변수 및 object_path 매개변수 외에 데코레이터 가 수행하는 모든 매개변수를 사용합니다.

매개변수

설명

module

물체

필수의. 래핑할 개체를 포함하는 모듈입니다.

object_path

필수의. 래핑할 개체의 경로입니다.

반환 값

데코레이터 message_transactionMessageTransactionWrapper 부분을 반환합니다.

message_transaction 예시

데코레이터의 예:

mt = message_transaction('library', 'Exchange', 'x', routing_key='foo.bar')
@mt
def foo():
pass

메시지 트랜잭션 예제

컨텍스트 관리자를 사용하는 예:

def callback(method, properties, body):
with MessageTransaction('library', 'Exchange', 'x', application=app):
pass

MessageTransactionWrapper 예

래퍼를 사용한 예:

basic_consume_wrapper = newrelic.agent.MessageTransactionWrapper(basic_consume_register_callback, 'library', 'Queue', 'x')
method_frame, header_frame, body = basic_consume_wrapper('queue')

wrap_message_transaction 예시

경로 기반 래퍼를 사용하는 예:

wrap_message_transaction('module', 'Foo.bar', 'library', 'Exchange', 'x')
Copyright © 2024 New Relic Inc.

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