통사론
newrelic.agent.notice_error(error=None, attributes={}, expected=None, ignore=None, status_code=None, application=None)
Python 예외의 세부 정보를 오류로 기록합니다.
설명
기본적으로 Python 에이전트는 처리되지 않은 예외만 보고합니다. notice_error
을 사용하여 Python 예외를 오류로 기록하면 UI에서 찾을 수 있습니다. 매개변수가 제공되지 않으면 현재 처리된 예외의 세부사항이 사용됩니다.
트랜잭션당 최대 5개의 고유한 예외를 기록할 수 있으며 수확 주기 당 모든 트랜잭션 에서 최대 20개의 총 예외를 기록할 수 있습니다.
모니터링되는 웹 요청 또는 백그라운드 작업의 컨텍스트 내에서 notice_error()
이 호출되면 요청 또는 작업이 보고되는 애플리케이션에 대해 예외 세부정보가 보고됩니다.
모니터링되는 웹 요청 또는 백그라운드 작업의 컨텍스트 외부에서 호출되는 경우 application
키워드 인수가 제공되고 예외가 기록되어야 하는 애플리케이션에 해당하는 애플리케이션 객체가 제공되지 않는 한 호출은 무시됩니다. newrelic.agent.application()
함수를 사용하여 적절한 애플리케이션 객체를 얻을 수 있습니다.
매개변수
팁
거의 모든 경우에 notice_error
에는 매개변수가 필요하지 않습니다.
매개변수 | 설명 |
---|---|
튜플 | 선택 사항이며 거의 사용되지 않습니다. |
딕셔너리 | 선택 과목. 오류 이벤트에 추가할 사용자 정의 속성(트랜잭션에 이미 추가된 사용자 정의 속성에 추가) 높은 수준의 보안 모드가 활성화되어 있으면 작동하지 않습니다. |
boolean, iterable[String], callable(exception_class, exception_instance, traceback)->boolean | 선택 과목. 예상대로 표시하는 오류는 |
boolean, iterable[String], callable(exception_class, exception_instance, traceback)->boolean | 선택 과목. 무시할 오류는 |
string, integer, callable(exception_class, exception_instance, 역추적) | 선택 과목. 예외 상태 코드입니다. 이 값은 문자열, 정수 또는 |
응용 프로그램 개체 | 선택 과목. 모니터링되는 웹 요청 또는 백그라운드 작업의 컨텍스트 외부에서 호출되는 경우 |
반환 값
없음.
예
보고 예외의 간단한 예
대부분의 경우 매개변수를 전달할 필요가 없습니다. 예외를 보고하려는 위치에서 다음을 호출하면 됩니다.
newrelic.agent.notice_error()
부울을 사용한 예
부울 값을 사용하는 notice_error
의 예. 이는 오류가 예상되어야 함을 나타냅니다.
newrelic.agent.notice_error(expected=True)
sys.exc_info() 튜플 및 추가 매개변수를 사용한 호출
sys.exc_info()
데이터를 사용하는 notice_error
의 예:
def complex_ignore_errors(exc, val, tb): # do some logic here return False
newrelic.agent.notice_error(attributes={'my_special_exception': True}, ignore=complex_ignore_errors)
콜백 사용 예
특정 예외 유형의 속성을 기반으로 예외를 동적으로 필터링해야 하는 경우 콜백 함수를 제공할 수 있습니다.
def _ignore_errors(exc, value, tb): if instance(value, HTTPError): if value.status == 404: return True
newrelic.agent.notice_error(ignore=_ignore_errors)
예외가 무시되거나 예상되는 경우 콜러블의 반환 값을 True
로 설정합니다. 다른 검사와 관계없이 예외를 절대 무시/예상해서는 안 되는 경우 False
반환하고 후속 검사 및 기본 규칙이 예외를 무시/예상해야 하는지 여부를 결정해야 하는 경우 None
반환합니다. 콜백은 일반적으로 True
또는 None
반환합니다.