Error Reporting 개요

Error Reporting을 사용하면 근본 원인별로 애플리케이션 오류 이벤트를 집계하여 클라우드 서비스 전반의 문제를 식별하고, 우선순위를 지정하고, 분류할 수 있습니다. 오류 이벤트는 단일 애플리케이션 오류를 나타내며 타임스탬프, 실행 컨텍스트, 메시지를 캡처합니다. Error Reporting은 Error Reporting API에서 직접 이벤트를 수집하거나 로그 항목에서 스택 트레이스 및 일반적인 오류 패턴을 검색하여 이벤트를 추론합니다.

성능을 최적화하기 위해 Error Reporting은 시간당 최대 1,000개의 오류를 샘플링하고 이 기준점에 도달하면 횟수를 추정합니다. 이벤트 수가 용량을 초과하면 Error Reporting은 시간당 최대 100개의 오류를 샘플링하고 표시된 수를 계속 추정합니다.

Error Reporting에서 로그 항목을 분석하는 경우

Error Reporting은 Cloud Logging을 기반으로 빌드된 글로벌 서비스이며, 다음 모든 조건에 해당하는 경우 로그 항목을 분석할 수 있습니다.

  • Assured Workloads가 사용 중지되었습니다. 자세한 내용은 Assured Workloads 개요를 참조하세요.
  • 로그 항목을 저장하는 모든 로그 버킷에서 고객 관리 암호화 키 (CMEK)가 사용 중지되었습니다. Error Reporting은 CMEK가 사용 설정된 로그 버킷에 로그 항목을 저장할 수 없습니다. 로그 버킷의 CMEK 구성을 확인하는 방법은 키 사용 설정 확인을 참조하세요.
  • 로그 버킷이 다음 중 하나를 충족합니다.
    • 로그 항목이 시작된 동일한 프로젝트에 로그 버킷이 저장되어 있습니다.
    • 로그 항목이 프로젝트로 라우팅된 후 프로젝트가 해당 로그 항목을 소유 로그 버킷에 저장했습니다.

오류 이벤트가 그룹화되는 방식

Error Reporting은 로그 항목을 평가하여 오류 이벤트를 식별할 때 다음 데이터를 무시합니다.

  • 심각도 수준이 ERROR보다 낮은 App Engine 표준 환경에서 작성된 로그 항목입니다.
  • 공용 라이브러리에 속하는 프레임과 같이 사용자가 소유하지 않은 스택 프레임

로그 항목을 스캔할 때 Error Reporting은 오류 이벤트를 추론하기 전에 다음과 같이 수정합니다.

  • 하나 이상의 스택 프레임의 반복되는 시퀀스를 해당 시퀀스의 단일 발생으로 대체합니다.
  • 컴파일러에서 도입된 메서드와 기호를 삭제합니다.

Error Reporting은 지정된 순서대로 다음 규칙을 적용하여 오류 이벤트를 그룹화합니다.

오류 이벤트 그룹 기준
환경의 일반적인 문제로 인해 발생하는 오류 이벤트

예를 들어 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()

이 예에서는 runtime, error, index 토큰이 고려됩니다.

메시지(있는 경우) 및 함수 이름별로 그룹화됩니다. 메시지의 첫 세 개의 리터럴 토큰만 고려됩니다.

데이터 리전성

데이터 레지던시 또는 영향 수준 4 (IL4) 요구사항을 위해 Assured Workloads를 설정하면 Google Cloud Error Reporting이 자동으로 사용 중지됩니다.

Cloud Logging에서는 특정 위치로 로그를 라우팅하여 로그를 리전화할 수 있습니다. 오류 그룹 페이지에서 Error Reporting은 로그 항목이 포함된 로그 버킷의 리전을 기준으로 오류 그룹을 정리하고 표시합니다. 예를 들어 us-central1에 나열된 오류 그룹에는 us-central1의 로그 버킷에 속하는 오류 로그만 포함됩니다. 전역 오류 그룹에는 global 리전의 로그 버킷에 속하는 오류 로그만 포함됩니다.

오류 그룹 페이지에 표시되는 오류 그룹의 리전을 필터링하려면 리전 메뉴에서 값을 선택합니다. 이 메뉴의 기본값은 global입니다.

'오류 그룹' 페이지의 '지역' 메뉴

다음 단계