Este documento explica como listar eventos de integridade do serviço que podem estar afetando ou terem afetado Google Cloud produtos no seu Google Cloud projeto ou organização. Você vai usar a API Service Health.
Antes de começar
- Ative a API Service Health no projeto da sua organização para listar eventos.
-
Make sure that billing is enabled for your Google Cloud project.
- Defina permissões para acessar a API Service Health.
Configure as permissões do Identity and Access Management (IAM) na sua organização para usar os recursos das APIs OrganizationEvents e OrganizationImpacts.
Antes de usar os dados do comando abaixo, faça estas substituições:
- ORGANIZATION ID: o ID da sua organização do Google Cloud.
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud organizations add-iam-policy-binding ORGANIZATION_ID \ --member {USER|GROUP|SERVICE_ACCOUNT} \ --role roles/servicehealth.viewer
Windows (PowerShell)
gcloud organizations add-iam-policy-binding ORGANIZATION_ID ` --member {USER|GROUP|SERVICE_ACCOUNT} ` --role roles/servicehealth.viewer
Windows (cmd.exe)
gcloud organizations add-iam-policy-binding ORGANIZATION_ID ^ --member {USER|GROUP|SERVICE_ACCOUNT} ^ --role roles/servicehealth.viewer
Para encontrar o ORGANIZATION_ID, consulte Como encontrar o ID do recurso da sua organização.
As políticas do IAM concedidas em uma organização são herdadas por todos os projetos dela. Essas políticas permitem acessar as APIs de eventos da organização e do projeto em toda a organização.
Referências
Consulte as referências da API Events (v1,v1beta), OrganizationEvents (v1,v1beta) e OrganizationImpacts (v1, v1beta) para saber quais métodos você pode usar e o significado dos campos na resposta.
Ao definir o produto ou local, use os valores encontrados em Google Cloud products e locations.
Listar todos os incidentes ativos de um projeto
É possível listar todos os Google Cloud incidentes de um projeto Google Cloud específico.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- API_VERSION: a versão da API a ser usada. Use
v1
ouv1beta
. - PROJECT_ID: o ID do projeto.
Método HTTP e URL:
GET https://servicehealth.googleapis.com/API_VERSION/projects/PROJECT_ID/locations/global/events?filter=state=ACTIVE%20category=INCIDENT&page_size=2&page_token={page_token}
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "events": [ { "name": "projects/PROJECT_ID/locations/global/events/event-123", "title": "We are experiencing a connectivity issue affecting Google Cloud SQL in us-east1, australia-southeast2.", "description": "The issue with Google Cloud SQL has been resolved for all affected projects. We thank you for your patience while we worked on resolving the issue.", "category": "INCIDENT", "detailedCategory": "CONFIRMED_INCIDENT", "state": "ACTIVE", "detailedState": "CONFIRMED", "eventImpacts": [ { "product": { "productName": "Google Cloud SQL", "id": "hV87iK5DcEXKgWU2kDri", }, "location": { "locationName": "asia-east2", } }, { "product": { "productName": "Google Cloud SQL", "id": "hV87iK5DcEXKgWU2kDri", }, "location": { "locationName": "asia-southeast1", } } ], "relevance": "RELATED", "updateTime": "2022-10-18T17:44:05.690761Z", "startTime": "2022-10-18T17:41:20.112287Z", }, { "name": "projects/PROJECT_ID/locations/global/events/event-567", "title": "Cloud Firestore may experience errors.", "description": "Mitigation work is currently underway by our engineering team. The mitigation is expected to complete by 2022-10-07T16:30:00Z.", "category": "INCIDENT", "detailedCategory": "CONFIRMED_INCIDENT", "state": "ACTIVE", "detailedState": "CONFIRMED", "eventImpacts": [ { "product": { "productName": "Cloud Firestore", "id": "CETSkT92V21G6A1x28me", }, "location": { "locationName": "us-central1-a", } } ], "relevance": "RELATED", "updateTime": "2022-10-07T15:19:59.409530Z", "startTime": "2022-10-07T15:10:35.887125Z", "nextUpdateTime": "2022-10-07T16:30:00Z" } ], "nextPageToken": "CgwIw8bDmgYQz4nUlgMQChomcHJvamVjdHMvcHNoLW1hbnVhbC" }
Se você não tiver as
permissões necessárias para listar eventos,
vai receber um erro PERMISSION_DENIED
.
{
"error": {
"code": 403,
"message": "Permission 'servicehealth.events.list' denied on resource '//servicehealth.googleapis.com/projects/PROJECT_ID/locations/global' (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",
"permission": "servicehealth.events.list"
}
}
]
}
}
Listar todos os incidentes ativos de uma organização
É possível listar todos os Google Cloud incidentes que afetam qualquer projeto que tenha ativado o Personalized Service Health na organização Google Cloud específica.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- API_VERSION: a versão da API a ser usada. Use
v1
ouv1beta
. - ORGANIZATION_ID: o ID da sua organização do Google Cloud.
Método HTTP e URL:
GET https://servicehealth.googleapis.com/API_VERSION/organizations/ORGANIZATION_ID/locations/global/organizationEvents?filter=state=ACTIVE%20category=INCIDENT&page_size=2&page_token={page_token}
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "organization_events": [ { "name": "organizations/ORGANIZATION_ID/locations/global/organizationEvents/event-123", "title": "We are experiencing a connectivity issue affecting Google Cloud SQL in us-east1, australia-southeast2.", "description": "The issue with Google Cloud SQL has been resolved for all affected projects. We thank you for your patience while we worked on resolving the issue.", "category": "INCIDENT", "detailedCategory": "CONFIRMED_INCIDENT", "state": "ACTIVE", "detailedState": "CONFIRMED", "eventImpacts": [ { "product": { "productName": "Google Cloud SQL", "id": "hV87iK5DcEXKgWU2kDri", }, "location": { "locationName": "asia-east2", } }, { "product": { "productName": "Google Cloud SQL", "id": "hV87iK5DcEXKgWU2kDri", }, "location": { "locationName": "asia-southeast1", } } ], "updateTime": "2022-10-18T17:44:05.690761Z", "startTime": "2022-10-18T17:41:20.112287Z", }, { "name": "organizations/ORGANIZATION_ID/locations/global/organizationEvents/event-567", "title": "Cloud Firestore may experience errors.", "description": "Mitigation work is currently underway by our engineering team. The mitigation is expected to complete by 2022-10-07T16:30:00Z.", "category": "INCIDENT", "detailedCategory": "CONFIRMED_INCIDENT", "state": "ACTIVE", "detailedState": "CONFIRMED", "eventImpacts": [ { "product": { "productName": "Cloud Firestore", "id": "CETSkT92V21G6A1x28me", }, "location": { "locationName": "us-central1-a", } } ], "updateTime": "2022-10-07T15:19:59.409530Z", "startTime": "2022-10-07T15:10:35.887125Z", "nextUpdateTime": "2022-10-07T16:30:00Z" } ], "nextPageToken": "CgwIw8bDmgYQz4nUlgMQChomcHJvamVjdHMvcHNoLW1hbnVhbC" }
Para encontrar o ORGANIZATION_ID, consulte Como encontrar o ID do recurso da sua organização.
Se você não tiver
permissões para listar eventos,
um erro PERMISSION_DENIED
vai aparecer.
{
"error": {
"code": 403,
"message": "Permission 'servicehealth.organizationEvents.list' denied on resource '//servicehealth.googleapis.com/organizations/ORGANIZATION_ID/locations/global' (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": "organizations/<var class="readonly">ORGANIZATION_ID</var>/locations/global",
"permission": "servicehealth.organizationEvents.list"
}
}
]
}
}
Listar projetos de uma organização que podem ser afetados por um evento
É possível listar todos os projetos de uma Google Cloud organização específica que:
- Pode ser afetado por um evento (
OrganizationImpact
). - Ative o Personalized Service Health.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- API_VERSION: a versão da API a ser usada. Use
v1
ouv1beta
. - EVENT_ID: o ID do evento que pode estar afetando uma organização.
- ORGANIZATION_ID: o ID da sua organização do Google Cloud.
Método HTTP e URL:
GET https://servicehealth.googleapis.com/API_VERSION/organizations/ORGANIZATION_ID/locations/global/organizationImpacts?filter=events:organizations%2FORGANIZATION_ID%2Flocations%2Fglobal%2FEVENT_ID&page_size=2&page_token={page_token}
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "organization_impacts": [ { "name": "organizations/ORGANIZATION_ID/locations/global/organizationImpacts/impact-123", "events": [ "organizations/ORGANIZATION_ID/locations/global/organizationEvents/EVENT_ID", ], "asset": { "assetName": "//cloudresourcemanager.googleapis.com/projects/{PROJECT_NUMBER_1}", "assetType": "cloudresourcemanager.googleapis.com/Project", }, "updateTime": "2022-10-18T17:44:05.690761Z", }, { "name": "organizations/ORGANIZATION_ID/locations/global/organizationImpacts/impact-234", "events": [ "organizations/ORGANIZATION_ID/locations/global/organizationEvents/EVENT_ID", ], "asset": { "assetName": "//cloudresourcemanager.googleapis.com/projects/{PROJECT_NUMBER_2}", "assetType": "cloudresourcemanager.googleapis.com/Project", }, "updateTime": "2022-10-18T17:44:05.690761Z", } ], "nextPageToken": "CgwIw8bDmgYQz4nUlgMQChomcHJvamVjdHMvcHNoLW1hbnVhbC" }
Se você não tiver as
permissões para listar eventos,
o seguinte erro PERMISSION_DENIED
vai aparecer.
{
"error": {
"code": 403,
"message": "Permission 'servicehealth.organizationImpacts.list' denied on resource '//servicehealth.googleapis.com/organizations/ORGANIZATION_ID/locations/global' (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": "organizations/ORGANIZATION_ID/locations/global",
"permission": "servicehealth.organizationImpacts.list"
}
}
]
}
}
A seguir
Consulte tutoriais para extrair informações de eventos por projeto ou organização usando a API Service Health.