리전화된 로그에 Error Reporting 사용

Error Reporting은 Cloud Logging을 기반으로 하는 글로벌 서비스입니다. 로그에서 발견된 오류를 계수, 분석, 집계하기 위해 Error Reporting은 로그 메시지의 샘플을 포함한 메타데이터를 자체 글로벌 데이터베이스에 저장합니다. 따라서 소스 및 대상 Google Cloud 프로젝트가 동일한 global 리전에 있는 Cloud Logging 버킷에 저장된 로그만 분석할 수 있습니다.

다른 Cloud 프로젝트 또는 리전화된 버킷으로 로그를 라우팅하는 경우 Error Reporting이 이러한 로그를 캡처하고 분석하지 않습니다.

Error Reporting이 로그를 분석할 수 있는지 확인

Error Reporting이 로그를 분석할 수 있는지 확인하려면 소스 및 대상 Cloud 프로젝트가 동일한 프로젝트인 global 리전의 버킷에 로그를 저장하고 있는지 확인합니다.

다음 명령어를 실행하여 구성된 싱크 목록을 확인합니다.

gcloud logging sinks list

이 명령어는 다음과 유사한 출력을 반환합니다.

NAME               DESTINATION                                                                                                FILTER
_Default           logging.googleapis.com/projects/my-team-project/locations/global/buckets/_Default                          NOT LOG_ID("cloudaudit.googleapis.com/activity") AND NOT LOG_ID("externalaudit.googleapis.com/activity") AND NOT LOG_ID("cloudaudit.googleapis.com/system_event") AND NOT LOG_ID("externalaudit.googleapis.com/system_event") AND NOT LOG_ID("cloudaudit.googleapis.com/access_transparency") AND NOT LOG_ID("externalaudit.googleapis.com/access_transparency")
_Required          logging.googleapis.com/projects/my-team-project/locations/global/buckets/_Required                         LOG_ID("cloudaudit.googleapis.com/activity") OR LOG_ID("externalaudit.googleapis.com/activity") OR LOG_ID("cloudaudit.googleapis.com/system_event") OR LOG_ID("externalaudit.googleapis.com/system_event") OR LOG_ID("cloudaudit.googleapis.com/access_transparency") OR LOG_ID("externalaudit.googleapis.com/access_transparency")
logs-from-samples  logging.googleapis.com/projects/my-team-project/locations/global/buckets/sample-bucket                     (empty filter)
regional_logs      logging.googleapis.com/projects/my-team-project/locations/europe-west1/buckets/bucket_for_regional_logs    (empty filter)
test-logs          logging.googleapis.com/projects/team-b-project/locations/global/buckets/test-bucket                        (empty filter)

이 예시에서 로그의 소스 Google Cloud 프로젝트는 my-team-project입니다. 결과는 다음과 같습니다.

  • Error Reporting은 _Default, _Required, logs-from-samples 싱크가 라우팅하는 로그를 분석할 수 있습니다. 동일한 프로젝트 내의 global 리전에 있는 버킷으로 로그를 라우팅하기 때문입니다.
  • Error Reporting은 regional_logs 싱크가 라우팅하는 로그를 분석할 수 없습니다. europe-west1 리전의 리전화된 버킷으로 로그를 라우팅하기 때문입니다.
  • Error Reporting은 test-logs 싱크가가 라우팅하는 로그를 분석할 수 없습니다. 소스 프로젝트가 아닌 다른 프로젝트(team-b-project)로 로그를 라우팅하기 때문입니다.