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

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

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

문제 신고

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 에이전트의 동작을 제어하기 위해 구성 설정 을 사용할 수 있습니다.

에이전트 종료

데이터 업로드를 위한 표준 최종 시도를 허용하는 대신 에이전트를 강제로 종료하려면 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.