• 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.

문제 신고

Python 에이전트 API 사용 가이드

Python 에이전트 API를 사용하면 모니터링을 사용자 지정하고 확장할 수 있습니다. Python 에이전트 API를 사용하여 다음을 수행합니다.

  • 지원되지 않는 프레임워크 또는 타사 시스템을 수동으로 계측합니다.
  • 에이전트의 기본 모니터링을 보완하기 위해 계측을 추가합니다.

이 문서에서는 사용 가능한 Python API 호출 중 일부를 설명합니다. 사용 가능한 모든 API에 대한 설명은 API 소개 를 참조하십시오.

사용자 정의 계측 또는 API

목표가 사용자 정의 계측 인 경우 에이전트가 자동 계측할 구성 파일에 기능 및 클래스 메서드를 추가할 수 있는 구성 파일 메서드 사용을 고려하십시오. config-file 방식의 이점은 애플리케이션 코드를 변경할 필요가 없다는 것입니다.

그러나 Python 에이전트 API는 훨씬 더 강력하며 더 복잡하고 맞춤화된 계측을 설정하는 데 가장 적합합니다. 전체 API 기능에 액세스하려면 최신 Python 에이전트 로 업데이트하십시오.

트랜잭션 및 세그먼트 모니터링

Python 에이전트는 대부분의 일반적인 WSGI 웹 프레임워크와 호환됩니다 . 에이전트가 프레임워크를 지원하는 경우 웹 요청이 자동으로 트랜잭션 으로 캡처되고 New Relic UI에 표시됩니다. 트랜잭션에는 트랜잭션 추적 의 일부로 캡처되는 기능 수준 세그먼트가 있을 수도 있습니다.

웹 트랜잭션, 웹이 아닌 트랜잭션 및 트랜잭션 세그먼트를 모니터링하려면 다음 방법을 사용하십시오.

원하는 경우...

이게 ...

WSGI 웹 트랜잭션 모니터링

Python 에이전트는 지원되는 프레임워크 에 대한 웹 트랜잭션을 자동으로 캡처합니다. 지원되는 프레임워크가 없는 경우 wsgi_application 함수를 사용하여 WSGI 진입점을 모니터링할 수 있습니다.

ASGI 웹 트랜잭션 모니터링

Python 에이전트는 지원되는 프레임워크에 대한 웹 트랜잭션을 자동으로 캡처합니다. 지원되는 프레임워크가 없는 경우 asgi_application 함수를 사용하여 ASGI 진입점을 모니터링할 수 있습니다.

웹이 아닌 트랜잭션 모니터링

Python 에이전트는 웹이 아닌 트랜잭션 을 백그라운드 작업으로 분류합니다. 웹이 아닌 트랜잭션을 캡처하려면 background_task 을 사용합니다.

거래에 대한 자세한 정보 캡처

트랜잭션 추적 에 원하는 수준의 세부 정보가 없는 경우:

  • function_trace 을 사용하여 트랜잭션에서 더 많은 기능 수준 세부정보를 캡처합니다.
  • datastore_trace 을 사용하여 데이터 저장소 호출에 대한 세부정보를 캡처합니다.

트랜잭션 무시

다음 옵션 중 하나를 사용합니다.

  • 트랜잭션을 완전히 무시하려면 ignore_transaction 을 사용합니다.
  • 트랜잭션이 트랜잭션 추적을 생성하지 않도록 하려면 suppress_transaction_trace 을 사용합니다.
  • 에이전트가 자동으로 트랜잭션을 종료하기 전에 트랜잭션을 종료하려면 end_of_transaction 을 사용합니다.

트랜잭션 메타데이터 추가 및 편집

대상 코드가 UI에 표시되는 경우가 있지만 메서드의 일부 세부 정보는 유용하지 않습니다. 예를 들어:

기존 트랜잭션의 메타데이터를 변경하려는 경우 다음 호출을 사용합니다.

원하는 경우...

이게 ...

현재 트랜잭션에 대한 참조 가져오기

현재 트랜잭션을 나타내는 객체를 반환하려면 current_transaction 을 사용합니다. 이것은 일부 다른 Python 에이전트 API 호출에 필요합니다.

트랜잭션 이름 변경

set_transaction_name 을(를) 사용합니다.

거래에 메타데이터(예: 고객의 구독 수준) 추가

add_custom_attribute 를 사용하여 거래에 맞춤 속성 을 추가하거나 다른 API 호출을 사용하여 맞춤 데이터를 보고합니다 .

트랜잭션을 백그라운드 작업으로 표시

웹 트랜잭션을 백그라운드 작업으로 변환하여 UI에서 웹이 아닌 트랜잭션 으로 표시하려면 set_background_task 을 사용합니다.

거래가 Apdex 점수 에 영향을 미치지 않도록 방지

suppress_apdex_metric 을(를) 사용합니다.

관련 로그 보기

애플리케이션의 오류 및 추적 컨텍스트 내에서 직접 로그를 보려면 get_linking_metadata API 호출을 사용하여 로그에 주석을 추가하세요. 로그 데이터와 다른 원격 측정 데이터의 상관 관계에 대한 자세한 내용은 컨텍스트 문서의 로그를 참조하세요.

맞춤 이벤트 및 맞춤 측정항목 데이터 보고

에이전트는 두 가지 기본 형식으로 데이터를 보고 합니다.

  • 메트릭 데이터는 숫자, 시간 기반 값을 측정합니다. 예를 들어 분당 연결 수입니다.
  • 이벤트 데이터는 개별 이벤트 정보를 캡처합니다. 이벤트에는 연결된 키-값 속성이 있습니다. 이벤트 데이터를 분석하고 쿼리 할 수 있습니다.

다음 방법을 사용하여 새 이벤트 데이터 및 새 메트릭 데이터를 생성하십시오.

원하는 경우...

이게 ...

데이터를 쿼리할 때 사용할 이벤트에 대한 데이터를 보냅니다.

record_custom_event 을(를) 사용합니다.

애플리케이션 성능에 대한 시간 기반 메트릭 보고

예외를 오류로 보고

기본적으로 Python 에이전트는 처리되지 않은 예외만 보고합니다. Python 예외를 오류로 보고하려면 notice_error 을 사용합니다.

쿼리 문자열 매개변수 보고

보안상의 이유로 웹 트랜잭션과 관련된 쿼리 문자열 매개변수는 기본적으로 비활성화되어 있습니다. capture_request_params 을(를) 사용하여 활성화합니다.

메타데이터로 이벤트에 태그 지정

더 자세한 쿼리 또는 오류 분석을 위해 이벤트에 속성을 추가하려면 add_custom_attribute 을 사용합니다.

데이터 소스 및 데이터 팩터리에서 메트릭 생성

record_custom_metric() 에 의해 구현된 푸시 스타일 API가 아닌 풀 스타일 API로 측정항목을 생성하려면 다음 API 호출을 사용하세요.

메시지 관련 통화

이러한 API 호출을 통해 메시지 전달 아키텍처 또는 서비스에 대한 성능 데이터를 수집할 수 있습니다. 예를 들어 RabbitMQ . 이러한 호출을 사용하려면 Python 에이전트 버전이 2.88.0.72 이상 인지 확인하십시오.

원하는 경우...

이게 ...

메시지를 트랜잭션 으로 보고

message_transaction 을(를) 사용합니다.

트랜잭션 추적 세그먼트로 메시지 세부 정보 보고

message_trace 을(를) 사용합니다.

분산 추적 구현

이러한 API 를 사용하려면 분산 추적 이 필요합니다.

에이전트가 모니터링하는 서비스와 애플리케이션은 지원되는 프레임워크 를 사용할 때 분산 추적 컨텍스트를 서로에게 자동으로 전달합니다. 지원되는 프레임워크를 사용하지 않는 경우 분산 추적 API를 사용하여 이 컨텍스트를 수동으로 수락해야 합니다.

지원되는 웹 프레임워크(예: Flask, Django, Tornado)는 트랜잭션을 생성할 때 자동으로 accept_distributed_trace_payload 을 호출합니다. 지원되는 외부 웹 서비스 라이브러리 는 외부 HTTP 호출을 수행하기 전에 자동으로 create_distributed_trace_payload 을 호출합니다.

아래 호출을 사용하여 분산 추적을 구현하는 방법에 대한 일반적인 지침은 분산 추적 API 사용 을 참조하세요.

원하는 경우...

이게 ...

호출된 서비스에 보낼 페이로드를 만듭니다.

create_distributed_trace_payload 을(를) 사용합니다.

첫 번째 서비스에서 보낸 페이로드를 수락합니다. 이것은 추적에서 이러한 서비스를 함께 연결합니다

accept_distributed_trace_payload 을(를) 사용합니다.

에이전트 구성, 초기화, 종료

이러한 호출은 에이전트 초기화 및 통합, 구성 설정 참조 또는 변경과 같은 Python 에이전트 동작을 관리하는 데 도움이 됩니다.

원하는 경우...

이게 ...

에이전트 초기화

고급 통합 프로세스 의 일부로 특정 구성 파일로 Python 에이전트를 초기화하려면 initialize 을 사용합니다.

application 객체에 대한 참조 가져오기

application 객체는 에이전트 모니터링 애플리케이션을 나타내며 일부 Python 에이전트 API 호출에서 사용됩니다.

구성 설정에 대한 참조 가져오기

Python 에이전트의 동작을 제어하기 위해 구성 설정 을 사용할 수 있습니다.

  • 구성 파일 및 환경 변수 설정에 대한 참조를 가져오고 이를 변경하려면 global_settings 을 사용합니다.
  • UI에서 서버측 구성 을 포함한 모든 설정에 대한 참조를 얻으려면 application_settings 을 사용합니다.

에이전트 종료

데이터 업로드를 위한 표준 최종 시도를 허용하는 대신 에이전트를 강제로 종료하려면 shutdown_agent 을 사용합니다.

브라우저 모니터링 에이전트 제어

브라우저 모니터링 에이전트 를 페이지에 자동으로 추가하거나, 에이전트 JavaScript 스니펫. APM 에이전트 API 호출을 사용하여 브라우저 에이전트를 제어할 수도 있습니다. 자세한 내용은 브라우저 에이전트 및 Python 에이전트를 참조하세요.

원하는 경우...

이게 ...

특정 페이지 보기 모니터링

모니터링하려는 보기에 브라우저 에이전트 헤더 및 바닥글 JavaScript 스니펫을 삽입하려면get_browser_timing_headerget_browser_timing_footer 모두를 사용합니다.

특정 페이지 보기 모니터링 비활성화

특정 페이지 보기에 대한 브라우저 모니터링을 비활성화하려면 disable_browser_autorum 을 사용합니다.

Copyright © 2024 New Relic Inc.

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