Error Reporting을 사용하면 근본 원인을 기반으로 애플리케이션 오류 이벤트를 오류 그룹으로 집계하여 클라우드 서비스 전반의 문제를 식별하고, 우선순위를 지정하고, 분류할 수 있습니다. 오류 이벤트는 단일 애플리케이션 오류를 나타내며 타임스탬프, 실행 컨텍스트, 메시지를 캡처합니다. Error Reporting은 Error Reporting API에서 직접 이벤트를 수집하거나 로그 항목에서 스택 트레이스 및 일반적인 오류 패턴을 검색하여 이벤트를 추론합니다.
Error Reporting에서 로그 항목을 분석하는 경우
Error Reporting은 Cloud Logging을 기반으로 빌드된 글로벌 서비스이며, 다음 모든 조건에 해당하는 경우 로그 항목을 분석할 수 있습니다.
- Assured Workloads가 사용 중지되었습니다. 자세한 내용은 Assured Workloads 개요를 참조하세요.
- 로그 항목을 저장하는 모든 로그 버킷에서 고객 관리 암호화 키 (CMEK)가 사용 중지되었습니다. Error Reporting은 CMEK가 사용 설정된 로그 버킷에 로그 항목을 저장할 수 없습니다. 로그 버킷의 CMEK 구성을 확인하는 방법은 키 사용 설정 확인을 참조하세요.
- 로그 버킷이 다음 중 하나를 충족합니다.
- 로그 항목이 시작된 동일한 프로젝트에 로그 버킷이 저장되어 있습니다.
- 로그 항목이 프로젝트로 라우팅된 후 프로젝트가 해당 로그 항목을 소유 로그 버킷에 저장했습니다.
오류 이벤트가 그룹화되는 방식
성능을 최적화하기 위해 Error Reporting은 시간당 최대 1,000개의 오류를 샘플링하고 이 기준점에 도달하면 횟수를 추정합니다. 이벤트 수가 용량을 초과하면 Error Reporting은 시간당 최대 100개의 오류를 샘플링하고 표시된 수를 계속 추정합니다.
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()이 예에서는 |
메시지(있는 경우) 및 함수 이름별로 그룹화됩니다. 메시지의 첫 세 개의 리터럴 토큰만 고려됩니다. |
데이터 리전성
데이터 레지던시 또는 영향 수준 4 (IL4) 요구사항을 위해 Assured Workloads를 설정하면 Google Cloud Error Reporting이 자동으로 사용 중지됩니다.
Cloud Logging에서는 특정 위치로 로그를 라우팅하여 로그를 리전화할 수 있습니다. 오류 그룹 페이지에서 Error Reporting은 로그 항목이 포함된 로그 버킷의 리전을 기준으로 오류 그룹을 정리하고 표시합니다. 예를 들어 us-central1에 나열된 오류 그룹에는 us-central1의 로그 버킷에 속하는 오류 로그만 포함됩니다. 전역 오류 그룹에는 global 리전의 로그 버킷에 속하는 오류 로그만 포함됩니다.
오류 그룹 페이지에 표시되는 오류 그룹의 리전을 필터링하려면 리전 메뉴에서 값을 선택합니다. 이 메뉴의 기본값은 global입니다.
