事件类型

本文档介绍了您可以在图表上显示的事件类型。事件是影响系统运行的 activity,例如重新启动或崩溃。在排查问题时,显示事件有助于您关联不同来源的数据。

对于每种事件类型,系统会提供以下信息:

  • 适合与日志浏览器或基于日志的提醒政策搭配使用的查询。
  • 常规信息或问题排查文档的参考。

以下屏幕截图演示了一个图表,其中显示了一个注解,并且带有激活注解的提示:

显示警告和信息性事件注解的图表。

每个注解都可以列出多个事件。上一个屏幕截图列出了 GKE 部署的事件。

如需了解如何在自定义信息中心内显示事件,请参阅在信息中心内显示事件

Google Kubernetes Engine 事件类型

本部分介绍了可在信息中心显示的 Google Kubernetes Engine 事件类型。

修补或更新的 GKE 工作负载

此事件类型可帮助您对 GKE 工作负载部署或 Statefulset 更改进行问题排查,因为这些事件可能与性能下降或其他性能问题相关。创建、更新或删除工作负载时,系统会显示此事件类型。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=k8s_cluster protoPayload.methodName=(
    io.k8s.apps.v1.deployments.create OR io.k8s.apps.v1.deployments.patch OR
    io.k8s.apps.v1.deployments.update OR io.k8s.apps.v1.deployments.delete OR
    io.k8s.apps.v1.deployments.deletecollection OR io.k8s.apps.v1.statefulsets.create OR
    io.k8s.apps.v1.statefulsets.patch OR io.k8s.apps.v1.statefulsets.update OR
    io.k8s.apps.v1.statefulsets.delete OR io.k8s.apps.v1.statefulsets.deletecollection OR
    io.k8s.apps.v1.daemonsets.create OR io.k8s.apps.v1.daemonsets.patch OR
    io.k8s.apps.v1.daemonsets.update OR io.k8s.apps.v1.daemonsets.delete OR
    io.k8s.apps.v1.daemonsets.deletecollection
)
-protoPayload.authenticationInfo.principalEmail="system:addon-manager"
-protoPayload.request.metadata.namespace=(kube-system OR gmp-system OR gmp-public OR gke-gmp-system)

如需了解详情,请参阅工作负载部署概览查看可观测性指标

GKE Pod 崩溃

此事件类型可帮助您识别 GKE Pod 崩溃并对其进行问题排查。Pod 崩溃可能是由于内存耗尽或应用错误而导致的。当发生以下任一情况时,系统就会显示此事件类型:

  • Pod 状态为“CrashLoopBackoff
  • Pod 终止并显示非零退出代码。
  • Pod 因内存不足的情况终止。
  • Pod 被逐出。
  • 就绪性/活跃性探测失败。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

(
    log_id(events)
    (
        (resource.type=k8s_pod jsonPayload.reason=(BackOff OR Unhealthy OR Killing OR Evicted)) OR
        (resource.type=k8s_node jsonPayload.reason=OOMKilling)
    )
    severity=WARNING
) OR (
    log_id(cloudaudit.googleapis.com%2Factivity) resource.type=k8s_cluster
    (protoPayload.methodName=io.k8s.core.v1.pods.eviction.create OR
        (protoPayload.methodName=io.k8s.core.v1.pods.delete
        protoPayload.response.status.containerStatuses.state.terminated.exitCode:*
        -protoPayload.response.status.containerStatuses.state.terminated.exitCode=0
        )
    )
)

如需了解问题排查信息,请参阅问题排查:CrashLoopBackOff

未能调度 GKE Pod

此事件类型可帮助您识别何时无法在节点上调度 Pod 并进行问题排查。如果 Pod 调度因以下任一原因而失败,系统就会显示此事件类型:

  • 节点 CPU 不足。
  • 节点内存不足。
  • 没有用于污点或容忍的节点。
  • 已达到 Pod 数量上限的节点。
  • 已达到最大大小的节点池。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

(
    log_id(events) resource.type=k8s_pod jsonPayload.reason=(NotTriggerScaleUp OR FailedScheduling)
) OR (
    log_id(container.googleapis.com/cluster-autoscaler-visibility)
    resource.type=k8s_cluster jsonPayload.noDecisionStatus.noScaleUp:*
)

如需了解问题排查信息,请参阅问题排查:Pod 无法调度

未能创建 GKE 容器

此事件类型可帮助您识别和排查创建 GKE 容器的失败问题。容器创建可能会由于卷装载失败或映像拉取失败等原因而失败。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

log_id(events) resource.type=k8s_pod jsonPayload.reason=(Failed OR FailedMount) severity=WARNING

如需了解问题排查信息,请参阅问题排查:ImagePullBackOff 和 ErrImagePull

Pod 自动扩缩器扩容和缩容

此事件可让您了解 Pod 横向自动扩缩器的重新扩缩情况,这会增加或减少工作负载正在运行的 Pod 的数量。如需了解详情,请参阅 Pod 横向自动扩缩

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=k8s_cluster log_id(events)
jsonPayload.involvedObject.kind=HorizontalPodAutoscaler jsonPayload.reason=SuccessfulRescale

集群自动扩缩器扩容和缩容

此事件可让您了解集群自动扩缩器何时扩缩集群节点池中的节点数量。如需了解详情,请参阅集群自动扩缩简介查看集群自动扩缩器事件

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

(resource.type=k8s_cluster log_id(container.googleapis.com%2Fcluster-autoscaler-visibility)
jsonPayload.decision:*)

创建和删除集群

此事件跟踪 GKE 集群的创建和删除操作。如需了解详情,请参阅创建 Autopilot 集群创建可用区级集群删除集群

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=gke_cluster log_id(cloudaudit.googleapis.com%2Factivity)
protoPayload.methodName=(
    google.container.v1alpha1.ClusterManager.CreateCluster OR
    google.container.v1beta1.ClusterManager.CreateCluster OR
    google.container.v1.ClusterManager.CreateCluster OR
    google.container.v1alpha1.ClusterManager.DeleteCluster OR
    google.container.v1beta1.ClusterManager.DeleteCluster OR
    google.container.v1.ClusterManager.DeleteCluster
)
operation.first=true

集群更新

此事件可跟踪 GKE 集群的更新。更新包括控制平面版本自动升级,以及手动升级和集群配置更改。如需了解详情,请参阅手动升级集群或节点池标准集群升级

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=gke_cluster log_id(cloudaudit.googleapis.com%2Factivity)
(
    protoPayload.methodName=(
        google.container.internal.ClusterManagerInternal.PatchCluster OR
        google.container.internal.ClusterManagerInternal.UpdateClusterInternal OR
        google.container.internal.ClusterManagerInternal.UpdateCluster
    )
) OR (
    protoPayload.methodName=(
        google.container.v1beta1.ClusterManager.UpdateCluster OR
        google.container.v1.ClusterManager.UpdateCluster
    )
    operation.first=true
)
protoPayload.metadata.operationType=(UPGRADE_MASTER OR REPAIR_CLUSTER OR UPDATE_CLUSTER)

节点池更新

此事件可跟踪 GKE 节点池的更新。更新包括节点池版本自动升级,以及手动升级、配置更改和调整大小。如需了解详情,请参阅手动升级集群或节点池标准集群升级

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=gke_nodepool log_id(cloudaudit.googleapis.com%2Factivity)
(
    protoPayload.methodName=(
        google.container.internal.ClusterManagerInternal.UpdateClusterInternal OR
        google.container.internal.ClusterManagerInternal.RepairNodePool
    )
) OR (
    protoPayload.methodName=(
        google.container.v1beta1.ClusterManager.UpdateNodePool OR
        google.container.v1.ClusterManager.UpdateNodePool OR
        google.container.v1beta1.ClusterManager.SetNodePoolSize OR
        google.container.v1.ClusterManager.SetNodePoolSize OR
        google.container.v1beta1.ClusterManager.SetNodePoolManagement OR
        google.container.v1.ClusterManager.SetNodePoolManagement OR
        google.container.v1beta1.ClusterManager.SetNodePoolAutoscaling OR
        google.container.v1.ClusterManager.SetNodePoolAutoscaling
    )
    operation.first=true
)

Cloud Run 事件类型

本部分介绍了可在信息中心显示的 Cloud Run 事件类型。

Cloud Run 部署

此事件类型可帮助您识别 Cloud Run 部署失败并对其进行问题排查。部署可能会由于以下原因而失败:服务帐号已删除、权限不正确、容器导入失败或容器无法启动。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

log_id(cloudaudit.googleapis.com%2Factivity) resource.type=cloud_run_revision
protoPayload.methodName=google.cloud.run.v1.Services.ReplaceService

如需了解问题排查信息,请参阅问题排查:Cloud Run 问题

Cloud SQL 事件类型

本部分介绍了可在信息中心显示的 Cloud SQL 事件类型。

Cloud SQL 故障切换

此事件类型可帮助您确定何时发生手动或自动故障切换。当某个实例或区域发生故障且备用实例成为新的主实例时,就会发生故障切换。在故障切换期间,Cloud SQL 会自动切换为从备用实例传送数据。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=cloudsql_database
(
    (
        log_id(cloudaudit.googleapis.com%2Factivity)
        protoPayload.methodName=cloudsql.instances.failover
        operation.last=true
    ) OR (
        log_id(cloudaudit.googleapis.com%2Fsystem_event)
        protoPayload.methodName=cloudsql.instances.autoFailover
    )
)

如需了解详情,请参阅高可用性简介

启动或停止 Cloud SQL

此事件类型可帮助您识别 Cloud SQL 实例是否已被手动启动、停止或重启。实例停止后,所有连接、打开的文件和正在运行的操作也会停止。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

log_id(cloudaudit.googleapis.com%2Factivity) resource.type=cloudsql_database
protoPayload.methodName=cloudsql.instances.update operation.last=true
protoPayload.metadata.intents.intent=(START_INSTANCE OR STOP_INSTANCE)

如需了解详情,请参阅高可用性简介以及启动、停止和重启实例

Cloud SQL 存储

此事件类型可帮助您识别与 Cloud SQL 存储相关的事件,包括数据库存储空间是否已满,以及数据库何时因达到存储容量而关闭。存储空间容量已用尽且未启用自动存储功能的数据库可能会关停,以防止数据损坏。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=cloudsql_database
(
    (
        (log_id(cloudsql.googleapis.com%2Fpostgres.log) OR log_id(cloudsql.googleapis.com%2Fmysql.err))
        textPayload=~"No space left on device"
        severity=(ERROR OR EMERGENCY)
    ) OR (
        log_id(cloudaudit.googleapis.com%2Fsystem_event)
        protoPayload.methodName=cloudsql.instances.databaseShutdownOutOfStorage
    )
)

Compute Engine 事件类型

本部分介绍了可在信息中心内显示的 Compute Engine 事件类型。

虚拟机终止

此事件类型可帮助您识别虚拟机 (VM) 终止,包括手动触发的重置和停止、客机操作系统终止、维护终止和主机错误。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=gce_instance
(
    (
        log_id(cloudaudit.googleapis.com%2Factivity)
        protoPayload.methodName=(
            beta.compute.instances.reset OR v1.compute.instances.reset OR
            beta.compute.instances.stop OR v1.compute.instances.stop
        )
        operation.first=true
    ) OR (
        log_id(cloudaudit.googleapis.com%2Fsystem_event)
        protoPayload.methodName=(
            compute.instances.hostError OR
            compute.instances.guestTerminate OR
            compute.instances.terminateOnHostMaintenance
        )
    )
)

如需了解详情,请参阅停止和启动虚拟机以及排查虚拟机关闭和重新启动问题

虚拟机实例启动失败

此事件会跟踪 Compute Engine 虚拟机实例启动失败问题。此事件会显示由于资源短缺、IP 空间用尽、超出配额或安全强化型虚拟机完整性错误而导致的启动失败。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=gce_instance
(
    (
        log_id(cloudaudit.googleapis.com%2Factivity)
        protoPayload.methodName=(beta.compute.instances.insert OR v1.compute.instances.insert)
        protoPayload.status.message=(ZONE_RESOURCE_POOL_EXHAUSTED OR IP_SPACE_EXHAUSTED OR QUOTA_EXCEEDED)
    ) OR (
        log_id(compute.googleapis.com%2Fshielded_vm_integrity)
        severity="ERROR"
    )
)

虚拟机实例客机操作系统错误

此事件会跟踪串行控制台日志所记录的特定 Compute Engine 虚拟机实例客户机操作系统错误。跟踪的错误包括:磁盘已满、文件系统装载失败以及会导致激活 Linux 紧急模式的启动失败。

如需显示这些事件,您必须通过在虚拟机或项目元数据中设置 serial-port-logging-enable=true 来启用将串行端口输出记录到 Cloud Logging 的功能。如需了解详情,请参阅启用和停用串行端口输出日志记录

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=gce_instance
log_id(serialconsole.googleapis.com%2Fserial_port_1_output)
textPayload=~("No space left on device" OR "Failed to mount" OR "You are in emergency mode")

代管式实例组更新

此事件类型可帮助您确定代管式实例组 (MIG) 何时进行了更新。例如,添加或移除了虚拟机,或者更新了大小限制。如需了解详情,请参阅在 MIG 中自动应用虚拟机配置更新

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=gce_instance_group_manager
log_id(cloudaudit.googleapis.com%2Factivity) operation.first=true
protoPayload.methodName=(beta.compute.instanceGroupManagers.patch OR v1.compute.instanceGroupManagers.patch)

如需了解详情,请参阅使用代管式实例排查代管式实例组问题

代管式实例组自动扩缩器

此事件跟踪 MIG 的自动伸缩器做出的伸缩决策。这些决策可能包括 MIG 建议大小的更改或自动扩缩器本身状态的更改。如需了解详情,请参阅自动扩缩实例组

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

resource.type=autoscaler log_id(cloudaudit.googleapis.com%2Fsystem_event)
protoPayload.methodName=(compute.autoscalers.resize OR compute.autoscalers.changeStatus)

拨测事件类型

本部分介绍了可在信息中心内显示的拨测事件类型。

拨测失败

此事件类型可帮助您识别来自已配置区域的拨测失败。

如果您想要为此事件类型创建基于日志的提醒政策,请使用以下查询:

log_id(monitoring.googleapis.com%2Fuptime_checks)
(
  resource.type=uptime_url OR resource.type=gce_instance OR
  resource.type=gae_app OR resource.type=k8s_service OR
  resource.type=servicedirectory_service OR resource.type=cloud_run_revision OR
  resource.type=aws_ec2_instance OR resource.type=aws_elb_load_balancer
)
labels.uptime_result_type=UptimeCheckResult
severity=NOTICE

如需了解问题排查信息,请参阅对合成监控工具和拨测进行问题排查

后续步骤

如需了解如何在信息中心内显示事件,请参阅在信息中心内显示事件