Administra eventos que afectan a una organización

En este documento, se explican los instructivos para usar la API de Service Health y administrar los eventos que afectan a tu organización.

Personalized Service Health proporciona los recursos de las APIs de OrganizationEvents y OrganizationImpacts, que te permiten obtener información sobre los eventos que afectan a tu organización. Esta información incluye lo siguiente:

  • Eventos de estado del servicio que pueden afectar uno o más proyectos de una organización.
  • Es una lista de proyectos que pueden verse afectados por un evento que afecta a tu organización.

Los recursos de la API no reciben todos los eventos que afectan a una organización ni los hacen aparecer en el panel de Service Health.

Antes de comenzar

  1. Habilita la API de Service Health para al menos un proyecto de tu organización. Los recursos de las APIs de OrganizationEvents y OrganizationImpacts obtienen información solo para los proyectos que tienen habilitada la API de Service Health.
  2. Establece permisos para acceder a la API de Service Health.
  3. Configura los permisos de Identity and Access Management (IAM) en tu organización para usar los recursos de las APIs de 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 Obtén el ID de tu recurso de organización.

    Todos los proyectos de la organización heredan las políticas de IAM otorgadas en una organización. Estas políticas te permiten acceder a las APIs de eventos de la organización y del proyecto en toda la organización.

Referencias

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

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

Enumera los proyectos de una organización que podrían verse afectados por un evento

Consulta la guía de inicio rápido.

Enumera todos los incidentes activos de una organización

Consulta la guía de inicio rápido.

Cómo obtener detalles de un evento que afecta a una organización

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

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • API_VERSION: La versión de la API que se usará. Usa v1 o v1beta
  • ORGANIZATION_ID: Es el ID de tu organización de Google Cloud.

Método HTTP y URL:

GET https://servicehealth.googleapis.com/API VERSION/organizations/ORGANIZATION_ID/locations/global/organizationEvents/EVENT_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": "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 corregir este error, establece los permisos necesarios.

Cómo obtener detalles de un proyecto de una organización que puede verse afectado por un evento

Para un evento determinado, el ID del evento permanece igual entre los eventos de tu proyecto y los de la organización. OrganizationImpact contiene un EVENT_ID y un PROJECT_NUMBER, que puedes usar para obtener detalles de un evento que afecta tu proyecto. Estos detalles incluyen state y relevance.

PROJECT_NUMBER es intercambiable con PROJECT_ID, que muestra la API de Get.