오류 그룹화 방식

Stackdriver Error Reporting은 근본 원인이 동일한 것으로 간주되는 오류를 그룹화합니다.

그룹화하기 전에

Error Reporting은 그룹화에 대한 오류를 평가하기 전에 다음과 같은 결정을 내립니다.

  • App Engine 표준 환경에서 ERROR 보다 낮은 심각도로 로깅된 오류는 무시됩니다.
  • 사용자가 소유하지 않은 스택 프레임은 무시됩니다(예: 공개 라이브러리에 속한 프레임).
  • 하나 이상의 스택 프레임의 반복 시퀀스는 해당 시퀀스의 단일 발생으로 대체됩니다.
  • 컴파일러에서 도입된 메소드와 기호는 삭제됩니다.

그룹화

시스템이 오류를 평가할 때 다음과 같은 일반적인 패턴을 따릅니다.

  • 예외가 동일한 예외 유형 및 유사한 스택을 갖는 경우 함께 그룹화됩니다.
  • 일반적으로 발생하는 소스 위치와 관련이 없는 예외에 대해서는 스택 추적이 무시됩니다.
  • 예외 스택이 없는 오류는 보고된 소스 위치(reportLocation)를 계산하여 같은 로그 구문으로 작성된 경우 함께 그룹화됩니다.

특히 다음 규칙이 아래에 나열된 순서로 적용됩니다.

오류 유형 그룹 기준
환경의 일반적인 문제점으로 발생한 오류.

예를 들어 App Engine 관련 문제는 다음과 같습니다.


com.google.apphosting.runtime.HardDeadlineExceededError

com.google.appengine.api.datastore.DatastoreTimeoutException

자바 문제:


java.util.concurrent.CancellationException
예외 유형별로 그룹화됩니다.
스택 추적 오류. 중첩된 예외의 경우 가장 안쪽의 예외가 고려됩니다.

예:


runtime error: index out of range
package1.func1()
      file1:20
package2.func2()
      file2:33
예외 유형 및 최상위 프레임 5개로 그룹화됩니다.
스택 추적이 없지만 함수 이름과 메시지가 있는 오류.

예:


runtime error: index out of range
    func1()
함수 이름과 메시지로 그룹화됩니다. 메시지의 처음 3자 리터럴 토큰만 고려됩니다. 왼쪽의 예에서는 runtime, error, index입니다.
이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Stackdriver Error Reporting Documentation