במאמר הזה מוסבר איך לקבל את דיווח על אירוע של Google Cloudאירוע באמצעות Service Health API.
דוחות האירועים זמינים לאירועים שעומדים בתנאים הבאים:
- לאירוע יש השפעה גלובלית או שהוא משפיע על אחוז משמעותי מהפרויקטים של הלקוחות באזור אחד או יותר.
- מוצר אחד או יותר לא זמינים או שהם פגומים באופן חמור.
- 24 שעות לפני תחילת האירוע, הפעלתם את Service Health API.
לפני שמתחילים
- מגדירים הרשאות גישה ל-API של Service Health.
- מאתרים את מזהה האירוע של התקרית שרוצים לבדוק אם יש לגביה דוח תקרית. אפשר לקבל רשימה של אירועים סגורים ולמצוא את מזהה האירוע.
קבלת המזהה של דיווח על אירוע
כדי לקבל את דוח האירוע לגבי אירוע מסוים:
- פרטים על האירוע
מחפשים את השורה הבאה בתגובת ה-JSON:
"artifact": "projects/PROJECT_ID/locations/global/artifacts/ARTIFACT_ID",שימו לב לARTIFACT_ID.
קבלת תוכן דיווח על אירוע
אפשר להשתמש ב-Get API כדי לקבל את התוכן של דיווח על אירוע.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט בענן של Google.
- ARTIFACT_ID: המזהה של דיווח על אירוע.
ה-method של ה-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"
}
}
]
}
}
כדי לפתור את השגיאה, צריך להגדיר את ההרשאות הנדרשות.
אחזור רשימה של דוחות אירועים
אפשר להשתמש ב-ListArtifacts method כדי לקבל רשימה של דוחות אירועים.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט בענן של Google.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://servicehealth.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/artifacts
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"artifacts": [
{
"name": "projects/PROJECT_ID/locations/global/artifacts/b2a4600f-33fb-4d33-a3ad-f43c8b8f2a3a",
"content": {
"markdown": "Content of the incident report.",
},
"category": "ARTIFACT_CATEGORY_INCIDENT_REPORT",
"createTime": "2022-10-18T17:41:20.112287Z",
"updateTime": "2022-10-18T18:00:05.690761Z",
}
],
"nextPageToken": "ABCREGI=",
"unreachable": []
}