En este documento, se explica cómo obtener el informe de incidentes de un incidente de Google Cloud mediante la API de Service Health.
Los informes de incidentes están disponibles para los incidentes que cumplen con las siguientes condiciones:
- El incidente tiene un impacto global o afecta a un porcentaje significativo de los proyectos de los clientes en una o más regiones.
- Uno o más productos no están disponibles o tienen una degradación importante.
Antes de comenzar
- Establece permisos para acceder a la API de Service Health.
- Obtén el ID del evento del incidente que deseas verificar para encontrar un informe del incidente. Puedes obtener una lista de incidentes cerrados y encontrar el ID del incidente.
Obtén el ID del informe de incidente
Para obtener el informe de un incidente, sigue estos pasos:
- Obtén los detalles del incidente.
Busca la siguiente línea en la respuesta JSON:
"artifact": "projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID",
Toma nota del ARTIFACT_ID.
Obtén el contenido del informe de incidentes
Puedes usar la API de Get para obtener el contenido del informe de incidentes.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: Es el ID de tu proyecto de Google Cloud.
- ARTIFACT_ID: El ID del informe de incidente.
Método HTTP y URL:
GET https://servicehealth.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "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", }
Si no tienes los permisos para obtener informes de incidentes, recibirás el siguiente
error 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"
}
}
]
}
}
Para corregir el error, establece los permisos necesarios.