使用 Personalized Service Health 检查服务中断情况

本文档介绍了 Personalized Service Health 出现中断时应采取的措施。

Personalized Service Health 可能会受到突发事件的部分或全部影响。您可以通过 Status API 资源和 Google CloudService Health 信息中心来检查是否存在突发事件、处理问题和性能问题。

使用 Status API

Service Health API 的 Status API 资源会告知您特定 Service Health 功能是否遇到问题。

准备工作

如需开始使用 Status API,请执行以下操作:

  1. 为您将用于访问此状态的项目或组织启用 Service Health API
  2. Make sure that billing is enabled for your Google Cloud project.

  3. 设置访问 Service Health API 的权限
  4. 在项目或组织中配置 Identity and Access Management (IAM) 权限,以使用 Status API。

    如需配置项目的权限,请运行以下命令:

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

    如需配置组织的权限,请运行以下命令:

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

    如需获取 ORGANIZATION_ID,请参阅获取组织资源 ID

在组织中授予的 IAM 政策由组织中的所有项目继承。借助这些政策,您可以访问整个组织中的组织和项目事件 API。

参考

如需了解可使用的方法以及响应中字段的含义,请参阅 Status API 参考文档

设置产品或位置时,请使用 Google Cloud 产品位置中的值。

使用项目 ID 获取服务健康状况

如需使用项目 ID 获取 Service Health 状况,请使用以下请求:

GET https://servicehealth.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/status

如果状态值为 OK,则请求会产生以下响应:

{
  "state": "OK",
}

此状态表示使用项目 ID 访问的功能(例如事件或影响)在内部没有遇到问题。

如果状态值为 ISSUES_DETECTED,则请求会产生以下响应:

{
  "state": "ISSUES_DETECTED",
  "issues": [
    {
      "message": "We are experiencing problems creating new events",
      "details": {
        "API": "events"
      }
    },
    {
      "message": "We are experiencing problems creating new impacts",
      "details": {
        "API": "impacts"
      }
    }
  ]
}

ISSUES_DETECTED 状态还会返回一组问题,表明使用项目 ID 访问的功能可能不准确。

如果您没有获取状态的权限,则会收到 PERMISSION_DENIED 错误。

{
  "error": {
    "code": 403,
    "message": "Permission 'servicehealth.statuses.get' denied on resource '//servicehealth.googleapis.com/projects/PROJECT_ID/locations/global/status' (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/status",
          "permission": "servicehealth.statuses.get"
        }
      }
    ]
  }
}

使用组织 ID 获取服务健康状况

如需获取状态,请使用以下请求:

GET https://servicehealth.googleapis.com/v1beta/organizations/ORGANIZATION_ID/locations/global/status

如果“服务健康状况”正常运行,状态应会产生以下响应:

{
  "state": "OK",
}

如果服务健康状况存在可能会影响其准确性或能力的问题,则状态应生成 ISSUES_DETECTED 状态的响应:

{
  "state": "ISSUES_DETECTED",
  "issues": [
    {
      "message": "We are experiencing problems creating new organization level events",
      "details": {
        "API": "organizationEvents"
      }
    },
    {
      "message": "We are experiencing problems creating new organization level impacts",
      "details": {
        "API": "organizationImpacts"
      }
    }
  ]
}

如果您没有获取状态的权限,则会收到 PERMISSION_DENIED 错误。

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

查看 Google Cloud 服务健康状况

Google Cloud 服务运行状况:告知您 Personalized Service Health 是否遇到问题。您还可以使用 RSS Feed 来使用数据。

如需详细了解 Google Cloud Service Health,请参阅突发事件和 Google Cloud Service Health