排查 GKE 中的日志记录问题

本页面介绍了如何调查和解决 GKE 日志记录相关问题。

Cloud Logging 中缺少集群日志

验证项目中是否已启用日志记录

  1. 列出已启用的服务:

    gcloud services list --enabled --filter="NAME=logging.googleapis.com"
    

    以下输出表明已为项目启用日志记录:

    NAME                    TITLE
    logging.googleapis.com  Cloud Logging API
    

    可选:查看日志查看器中的日志,以确定谁停用了 API 以及何时停用 API:

    protoPayload.methodName="google.api.serviceusage.v1.ServiceUsage.DisableService"
    protoPayload.response.services="logging.googleapis.com"
    
  2. 如果日志记录已停用,请启用日志记录:

    gcloud services enable logging.googleapis.com
    

验证集群上是否已启用日志记录

  1. 列出集群:

    gcloud container clusters list \
        --project=PROJECT_ID \
        '--format=value(name,loggingConfig.componentConfig.enableComponents)' \
        --sort-by=name | column -t
    

    替换以下内容:

    • PROJECT_ID:您的 Trusted Cloud by S3NS 项目 ID。

    输出内容类似如下:

    cluster-1              SYSTEM_COMPONENTS
    cluster-2              SYSTEM_COMPONENTS;WORKLOADS
    cluster-3
    

    如果集群的值为空,则停用日志记录。例如,此输出中的 cluster-3 已停用日志记录。

  2. 如果设置为 NONE,则启用集群日志记录:

    gcloud container clusters update CLUSTER_NAME  \
        --logging=SYSTEM,WORKLOAD \
        --location=COMPUTE_LOCATION
    

    替换以下内容:

验证是否未达到 Cloud Logging Write API 配额

确认未达到 Cloud Logging 的 API 写入配额。

  1. 转到 Google Cloud 控制台中的配额页面。

    转到“配额”

  2. 按“Cloud Logging API”过滤表。

  3. 确认未达到任何配额。