이 문서에서는 Service Health API를 사용하여 Google Cloud 이벤트에 대한 이슈 보고서를 가져오는 방법을 설명합니다.
다음 조건을 충족하는 이슈에 대해 이슈 보고서를 사용할 수 있습니다.
- 전역에 영향을 미치거나 하나 이상의 리전에서 상당한 비율의 고객 프로젝트에 영향을 주고 있습니다.
- 하나 이상의 제품을 사용할 수 없거나 성능이 심각하게 저하되었습니다.
시작하기 전에
- Service Health API에 액세스할 수 있는 권한을 설정합니다.
- 사고 보고서를 확인하려는 사고의 이벤트 ID를 가져옵니다. 종료된 이슈 목록을 가져오고 이슈 ID를 찾을 수 있습니다.
문제 신고 ID 가져오기
사고에 대한 사고 보고서를 가져오는 방법은 다음과 같습니다.
- 문제의 세부정보를 확인합니다.
JSON 응답에서 다음 줄을 찾습니다.
"artifact": "projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID",
ARTIFACT_ID을 기록합니다.
이슈 신고의 콘텐츠 가져오기
Get API를 사용하여 문제 신고의 콘텐츠를 가져올 수 있습니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- ARTIFACT_ID: 문제 신고의 ID입니다.
HTTP 메서드 및 URL:
GET https://servicehealth.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{ "name": "projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID", "content": { "markdown": "Content of the incident report.", }, "category": "ARTIFACT_CATEGORY_INCIDENT_REPORT", "createTime": "2022-10-18T18:00:05.690761Z", "updateTime": "2022-10-18T17:41:20.112287Z", }
이슈 신고를 가져올 권한이 없는 경우 다음과 같은 PERMISSION_DENIED
오류가 발생합니다.
{
"error": {
"code": 403,
"message": "Permission 'servicehealth.artifacts.get' denied on resource '//servicehealth.googleapis.com/projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID' (or it may not exist).",
"status": "PERMISSION_DENIED",
"details": [
{
"@type": "type.googleapis.com/google.rpc.ErrorInfo",
"reason": "IAM_PERMISSION_DENIED",
"domain": "servicehealth.googleapis.com",
"metadata": {
"resource": "projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID",
"permission": "servicehealth.artifacts.get"
}
}
]
}
}
오류를 수정하려면 필수 권한을 설정하세요.