Error Reporting을 사용하여 오류 데이터 수집

이 문서는 Error Reporting에서 지원하는 환경을 나열하고, 애플리케이션 개발자를 위한 언어별 가이드에 연결합니다. 언어별 클라이언트 라이브러리를 사용하거나 자동으로 수집되는 로그 항목을 사용하는 것이 좋습니다. 하지만 Cloud Logging API 또는 Error Reporting API를 사용하여 오류 데이터를 작성할 수 있습니다. 예를 들어 Cloud Run을 사용하는 경우 stderr에 기록된 예외가 자동으로 Cloud Logging에 전송됩니다.

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

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

가상 프라이빗 클라우드 지원

Error Reporting은 Virtual Private Cloud(VPC) 지원 서비스입니다.

데이터 무단 반출 위험을 줄이려면 VPC 서비스 제어를 사용하여 Google 관리형 서비스에 서비스 경계를 만듭니다. VPC 서비스 제어 및 서비스 매개변수 만들기 방법에 대한 자세한 내용은 VPC 서비스 제어 문서를 참조하세요.

오류 데이터를 자동으로 보고하도록 환경 구성

환경별 구성 요구사항에 대한 자세한 내용은 다음 가이드를 참조하세요.

클라이언트 라이브러리를 사용하여 앱 계측

오류 보고서를 보내도록 애플리케이션을 구성하는 방법에 대한 자세한 내용은 언어별 구성 가이드를 참조하세요.

API를 사용하여 오류 데이터 쓰기

Error Reporting API 메서드 report 또는 Cloud Logging API 메서드 write를 실행하여 Google Cloud 프로젝트에 오류 이벤트를 보고할 수 있습니다.

  • API 키 기반 인증이 필요한 경우 Error Reporting API를 사용해야 합니다. Error Reporting API를 사용하여 오류 이벤트를 보고하려면 report 메서드를 실행하고 메서드의 요청 본문 형식을 ReportedErrorEvent 객체로 지정합니다.

    Error Reporting API를 사용하면 올바른 형식의 오류 메시지가 포함된 로그 항목이 자동으로 생성되어 Cloud Logging에 기록됩니다. 이러한 로그 항목은 logName과 같이 형식이 지정된 로그에 기록됩니다.

    projects/PROJECT_ID/clouderrorreporting.googleapis.com%2Freported_errors
    

    로그 항목은 report 호출을 통해 생성되므로 Cloud Logging 수집 비용이 발생할 수 있습니다. 수집되는 로그 항목을 제어하려면 제외 필터를 참조하세요.

    Error Reporting API를 사용하여 오류 이벤트를 보고하는 경우 이 문서의 나머지 내용이 적용되지 않습니다.

  • Cloud Logging API를 사용하려면 스택 트레이스 또는 ReportedErrorEvent 객체를 포함하도록 LogEntry 객체를 포맷해야 합니다. 형식 지정 요구사항에 대한 자세한 내용은 로그의 형식 오류를 참조하세요.