Ce document explique comment obtenir le rapport d'incident pour un incident Google Cloudà l'aide de l'API Service Health.
Les rapports d'incident sont disponibles pour les incidents qui remplissent les conditions suivantes :
- L'incident a un impact mondial ou affecte un pourcentage important de projets clients dans une ou plusieurs régions.
- Un ou plusieurs produits sont indisponibles ou fortement dégradés.
- Vous avez activé l'API Service Health 24 heures avant le début de l'incident.
Avant de commencer
- Définissez les autorisations d'accès à l'API Service Health.
- Obtenez l'ID de l'événement pour lequel vous souhaitez vérifier s'il existe un rapport d'incident. Vous pouvez obtenir la liste des incidents clôturés et trouver l'ID de l'incident.
Obtenir l'ID du rapport d'incident
Pour obtenir le rapport d'incident d'un incident :
- Obtenez des informations sur l'incident.
Recherchez la ligne suivante dans la réponse JSON :
"artifact": "projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID",
Notez la valeur de ARTIFACT_ID.
Obtenir le contenu du rapport d'incident
Vous pouvez utiliser l'API Get pour obtenir le contenu du rapport d'incident.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Google Cloud.
- ARTIFACT_ID : ID du rapport d'incident.
Méthode HTTP et URL :
GET https://servicehealth.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "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 vous ne disposez pas des autorisations nécessaires pour obtenir des rapports sur les incidents, l'erreur PERMISSION_DENIED
suivante s'affichera.
{
"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"
}
}
]
}
}
Pour corriger l'erreur, définissez les autorisations requises.