Gestionar eventos que afectan a una organización

En este documento se explica cómo usar la API Service Health para gestionar los eventos que afectan a tu organización.

Personalized Service Health proporciona los recursos de las APIs OrganizationEvents y OrganizationImpacts, que te permiten obtener información sobre los eventos que afectan a tu organización. Entre la información obtenida de esta forma, se incluyen los siguientes datos:

  • Eventos de estado del servicio que pueden afectar a uno o varios proyectos de una organización.
  • Lista de proyectos que pueden verse o se han visto afectados por un evento que afecta a tu organización.

Antes de empezar

  1. Habilita la API Service Health en al menos un proyecto de tu organización. Los recursos de las APIs OrganizationEvents y OrganizationImpacts solo obtienen información de los proyectos que tienen habilitada la API Service Health.
  2. Verify that billing is enabled for your Google Cloud project.

  3. Define los permisos para acceder a la API Service Health.
  4. Configura los permisos de gestión de identidades y accesos (IAM) en tu organización para usar los recursos de las APIs OrganizationEvents y OrganizationImpacts. Ejecuta el siguiente comando:

    gcloud organizations add-iam-policy-binding $ORGANIZATION_ID \
      --member {USER|GROUP|SERVICE_ACCOUNT} \
      --role roles/servicehealth.viewer
    

    Para obtener tu ORGANIZATION_ID, consulta Obtener el ID de recurso de tu organización.

    Las políticas de gestión de identidades y accesos concedidas en una organización se heredan en todos los proyectos de la organización. Estas políticas te permiten acceder a las APIs de eventos de organizaciones y proyectos de toda la organización.

Referencias

Consulta la referencia de la API OrganizationEvents y OrganizationImpacts para ver los métodos que puedes usar y el significado de los campos de la respuesta.

Cuando defina el producto o la ubicación, utilice los valores que se encuentran en Google Cloud products y locations.

Mostrar los proyectos de una organización que pueden verse afectados por un evento

Consulta la guía de inicio rápido.

Mostrar todos los incidentes activos de una organización

Consulta la guía de inicio rápido.

Obtener detalles de un evento que afecta a una organización

Puedes usar la API Get para ver información detallada sobre un evento que afecte a una organización.

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • API_VERSION: versión de la API que se va a usar. Usa v1 o v1beta.
  • ORGANIZATION_ID: el ID de tu organización de Google Cloud.
  • EVENT_ID: el ID del evento.

Método HTTP y URL:

GET https://servicehealth.googleapis.com/API VERSION/organizations/ORGANIZATION_ID/locations/global/organizationEvents/EVENT_ID

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

{
  "name": "organizations/ORGANIZATION_ID/locations/global/organizationEvents/EVENT_ID",
     "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 as of Tuesday, 2022-10-18 11:00 US/Pacific. We thank you for your patience while we worked on resolving the issue.",
      "category": "INCIDENT",
      "detailedCategory": "CONFIRMED_INCIDENT",
      "state": "CLOSED",
      "detailedState": "RESOLVED",
      "eventImpacts": [
        {
          "product": {
            "productName": "Google Cloud SQL",
            "id": "hV87iK5DcEXKgWU2kDri",
          },
          "location": {
            "locationName": "us-central1",
          }
        }
      ],
   "updates": [
    {
      "updateTime": "2022-10-18T17:41:20.112287Z",
              "title": "We are experiencing a connectivity issue affecting Google Cloud SQL in us-east1, australia-southeast2.",
      "description": "We are experiencing an intermittent issue with Google Cloud SQL. Our engineering team continues to investigate the issue.",
      "symptom": "None at this time.",
      "workaround": "None at this time."
    },
    {
      "updateTime": "2022-10-18T18:00:05.690761Z",
      "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 as of Tuesday, 2022-10-18 11:00 US/Pacific.\n\nWe thank you for your patience while we worked on resolving the issue.",
      "symptom": "None at this time.",
      "workaround": "None at this time."
    }
  ],
  "updateTime": "2022-10-18T18:00:05.690761Z",
  "startTime": "2022-10-18T17:41:20.112287Z",
  "endTime":  "2022-10-18T18:00:05.690761Z",
}

Si no tienes permisos para obtener eventos, recibirás el siguiente error PERMISSION_DENIED.

{
  "error": {
    "code": 403,
    "message": "Permission 'servicehealth.organizationEvents.get' denied on resource '//servicehealth.googleapis.com/organizations/ORGANIZATION_ID/locations/global/organizationEvents/EVENT_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": "organizations/ORGANIZATION_ID/locations/global/organizationEvents/EVENT_ID",
          "permission": "servicehealth.organizationEvents.get"
        }
      }
    ]
  }
}

Para solucionar este error, defina los permisos necesarios.

Obtener detalles de un proyecto de una organización que pueda verse afectado por un evento

En un evento concreto, el ID del evento sigue siendo el mismo en los eventos de tu proyecto y de tu organización. OrganizationImpact contiene un EVENT_ID y un PROJECT_NUMBER, que puede usar para obtener detalles de un evento que afecte a su proyecto. Entre estos detalles, se incluyen state y relevance.

PROJECT_NUMBER se puede sustituir por PROJECT_ID, que devuelve la API Get.