查询示例

本文档为您提供了查询建议,以便您更轻松地在 Google Cloud 控制台中使用日志浏览器查找重要日志。列出的查询使用 Logging 查询语言编写,可在 Logs ExplorerLogging API命令行界面中使用。

日志浏览器使用布尔表达式指定项目中的部分日志条目。您可以使用这些查询从特定日志或日志服务中选择日志条目,或者选择满足元数据或用户定义的字段条件的日志条目。

准备工作

如需查看从 Amazon Web Services (AWS) 帐号发送到 Logging 的日志,请在 Google Cloud 控制台资源选择器中选择 AWS 连接器项目,然后使用 Logs Explorer。AWS 连接器项目会存储您的 AWS 账号的 Amazon 资源名称 (ARN),并将您的 AWS 账号关联到 Google Cloud 服务。如需了解详情,请参阅从 AWS 帐号收集指标

确保您拥有正确的 Identity and Access Management 权限或角色,以便使用 Logs Explorer 构建查询。如需详细了解必要的 IAM 权限,请参阅 Google Cloud 控制台的权限

开始

  1. 在 Google Cloud 控制台中,转到 Logs Explorer 页面。

    前往 Logs Explorer

    如果您使用搜索栏查找此页面,请选择子标题为 Logging 的结果。

  2. 选择要查看其日志的相应 Google Cloud 项目或其他 Google Cloud 资源。

使用示例查询

如需应用下表中的查询,请点击表达式的 内容复制图标,然后将复制的表达式粘贴到日志浏览器查询编辑器字段中:

查询编辑器显示输入查询的位置

如果您没有看到查询编辑器字段,请启用显示查询

检查查询表达式后,点击运行查询。与查询匹配的日志会列在查询结果下。

本页面后面部分列出的一些查询包含您应该替换为有效值的变量。例如,如果查询包含 logName,则您提供的 PROJECT_ID 必须引用当前选定的 Google Cloud 项目;否则,该查询将不起作用。

请注意以下几点:

  • 如果您的查询带有时间戳,则时间范围选择器将被停用,查询会使用时间戳表达式作为其时间范围限制。如果查询不使用时间戳表达式,则查询使用时间范围选择器作为其时间范围限制。

  • 查询的长度不能超过 20,000 个字符。

  • Logging 查询语言不区分大小写,正则表达式除外。

  • 您可以使用 log_id 函数通过 log_name 表达式进行查询。例如,表达式 log_name="projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access"log_id("cloudaudit.googleapis.com/data_access") 相同。 如需详细了解 log_id 函数,请参阅日志记录查询语言:函数

如需了解如何在 Google Cloud 控制台中进行查询,请参阅在日志浏览器中构建查询

以下部分按 Google Cloud 服务对查询进行分组。

App Engine 查询

查询/过滤条件名称 表达式
跨年夜(世界协调时间)的 App Engine 日志
resource.type="gae_app" AND
severity>=ERROR AND
timestamp>="2018-12-31T00:00:00Z" AND timestamp<="2019-01-01T00:00:00Z" 
具有服务器错误的 App Engine 请求日志
resource.type="gae_app" AND
log_id("appengine.googleapis.com/request_log") AND
httpRequest.status>=500 
采样 HTTP 错误日志
resource.type="gae_app" AND
protoPayload.status >= 400 AND
sample(insertId, 0.1) 
搜索 App Engine 跟踪记录 ID
resource.type="gae_app" AND
trace="projects/PROJECT_ID/traces/TRACE_ID" 
App Engine 日志
resource.type="gae_app" AND
resource.labels.module_id="MODULE_ID" AND
resource.labels.version_id="VERSION_ID" 
近期的 App Engine 部署
resource.type="gae_app" AND
protoPayload."@type"="type.googleapis.com/google.cloud.audit.AuditLog" AND
protoPayload.serviceName="appengine.googleapis.com" 

API 启用和停用查询

查询/过滤条件名称 表达式
Audit API 启用日志
protoPayload.methodName="google.api.serviceusage.v1.ServiceUsage.EnableService"
Audit API 停用日志
protoPayload.methodName="google.api.serviceusage.v1.ServiceUsage.DisableService"

BigQuery 查询

查询/过滤条件名称 表达式
BigQuery 审核日志
resource.type=("bigquery_dataset" OR "bigquery_project") AND
logName:"cloudaudit.googleapis.com" 
项目的 BigQuery 审核日志
resource.type="bigquery_project" AND
logName:"cloudaudit.googleapis.com" 
数据集的 BigQuery 审核日志
resource.type="bigquery_dataset" AND
logName:"cloudaudit.googleapis.com" 
BI Engine 模型的 BigQuery 审核日志
resource.type="bigquery_biengine_model" AND
logName:"cloudaudit.googleapis.com" 
Data Transfer Service 运行的 BigQuery 审核日志。
resource.type="bigquery_dts_run" AND
logName:"cloudaudit.googleapis.com" 
Data Transfer Service 配置的 BigQuery 审核日志。
resource.type="bigquery_dts_config" AND
logName:"cloudaudit.googleapis.com" 
BigQuery Data Transfer Service 作业
resource.type=("bigquery_project") AND
protoPayload.requestMetadata.callerSuppliedUserAgent=
"BigQuery Data Transfer Service" AND
protoPayload.methodName=("google.cloud.bigquery.v2.JobService.InsertJob" OR
"google.cloud.bigquery.v2.JobService.Query") 
BigQuery 转移作业运行日志
resource.type="bigquery_dts_config" AND
labels.run_id="RUN_ID" AND
resource.labels.config_id="CONFIG_ID" 
BigQuery 数据集更新
resource.type="bigquery_dataset" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName=
"google.cloud.bigquery.v2.DatasetService.UpdateDataset" 
BigQuery 作业已完成
resource.type="bigquery_project" AND
log_id("cloudaudit.googleapis.com/data_access") AND
protoPayload.methodName=("google.cloud.bigquery.v2.JobService.InsertJob"
OR "google.cloud.bigquery.v2.JobService.Query") 
BigQuery 大型查询
resource.type="bigquery_project" AND
protoPayload.metadata.jobChange.job.jobStats.queryStats.totalBilledBytes
> 1073741824 
已超出 BigQuery 配额
resource.type=("bigquery_dataset" OR "bigquery_project")
AND
protoPayload.status.code=8 AND
severity>=WARNING 
已开始 BigQuery 查询
resource.type="bigquery_project" AND
protoPayload.metadata.jobInsertion.reason:*
BigQuery 并发加载/提取作业
resource.type="bigquery_resource" AND
protoPayload.methodName="jobservice.insert" AND
protoPayload.serviceData.jobInsertRequest.resource.jobConfiguration.query.query:
"extract"

Dataflow 查询

查询/过滤条件名称 表达式
Dataflow 工作器中的错误和警告
resource.type="dataflow_step" AND
log_id("dataflow.googleapis.com/worker") AND
severity>=WARNING 

Dataproc 查询

查询/过滤条件名称 表达式
Dataproc Apache Hadoop 日志
resource.type="cloud_dataproc_cluster" AND
jsonPayload.class:"org.apache.hadoop.mapreduce" 

Cloud Deployment Manager

查询/过滤条件名称 表达式
Deployment Manager 错误
resource.type="deployment" AND
severity>=ERROR 

Cloud Functions 查询

查询/过滤条件名称 表达式
Cloud Functions 函数错误
resource.type="cloud_function" AND
log_id("cloudfunctions.googleapis.com/cloud-functions") AND
severity>=ERROR 

Cloud Monitoring 查询

查询/过滤条件名称 表达式
显示所有通知渠道
错误
resource.type="stackdriver_notification_channel" AND
severity>=ERROR 
显示由于节流而导致的
通知渠道错误
resource.type="stackdriver_notification_channel" AND
severity>=ERROR AND
jsonPayload.summary="Notification delivery throttled."
显示正常运行时间资源
写入的日志
resource.type="uptime_url"
显示从拨测服务
收到的请求
"GoogleStackdriverMonitoring-UptimeChecks"

Cloud Run 查询

查询/过滤条件名称 表达式
特定作业的 Cloud Run 日志
resource.type="cloud_run_job" AND
resource.labels.service_name="JOB_NAME"
特定修订版本和服务的 Cloud Run 日志
resource.type="cloud_run_revision" AND
resource.labels.service_name="SERVICE_NAME"

Cloud Source Repositories 查询

查询/过滤条件名称 表达式
Cloud Source Repository 日志
resource.type="csr_repository" AND
resource.labels.name="REPOSITORY_NAME"

Spanner 查询

查询/过滤条件名称 表达式
特定 Spanner 实例的 Cloud Spanner 日志
resource.type="spanner_instance" AND
resource.labels.instance_id="SPANNER_INSTANCE"

Cloud SQL 查询

查询/过滤条件名称 表达式
Cloud SQL 审核日志
resource.type="cloudsql_database" AND
resource.labels.database_id="DATABASE_ID" AND
log_id("cloudaudit.googleapis.com/activity")
Cloud SQL MySQL 错误日志
resource.type="cloudsql_database" AND
log_id("cloudsql.googleapis.com/mysql.err")
基于 Cloud SQL MySQL 的数据库
resource.type="cloudsql_database" AND
resource.labels.database_id="DATABASE_ID" AND
log_id("cloudsql.googleapis.com/mysql")
基于 Cloud SQL Postgres 的数据库
resource.type="cloudsql_database" AND
resource.labels.database_id="DATABASE_ID" AND
log_id("cloudsql.googleapis.com/postgres.log")
Cloud SQL SQL Server 错误日志
resource.type="cloudsql_database" AND
log_id("cloudsql.googleapis.com/sqlserver.err")
基于 Cloud SQL SQL Server 的数据库
resource.type="cloudsql_database" AND
resource.labels.database_id="DATABASE_ID" AND
log_id("cloudsql.googleapis.com/sqlagent.out")

Cloud Storage 查询

查询/过滤条件名称 表达式
GCS 存储桶日志
resource.type="gcs_bucket" AND
resource.labels.bucket_name="BUCKET_NAME"
GCS 存储桶审核日志
resource.type="gcs_bucket" AND
logName:"cloudaudit.googleapis.com" 
GCS 存储桶创建日志
resource.type="gcs_bucket" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.method_name="storage.buckets.create" 
GCS 存储桶删除日志
resource.type="gcs_bucket" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.method_name="storage.buckets.delete" 

Cloud Tasks 查询

查询/过滤条件名称 表达式
Cloud Tasks 队列日志
resource.type="cloud_tasks_queue" AND
resource.labels.queue_id="QUEUE_ID"

Compute Engine 查询

查询/过滤条件名称 表达式
Compute Engine 管理员活动日志
resource.type="gce_instance" AND
log_id("cloudaudit.googleapis.com/activity")
删除 Compute Engine 防火墙规则
resource.type="gce_firewall_rule" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName:"firewalls.delete" 
Compute Engine 虚拟机系统日志
resource.type="gce_instance" AND
log_id("syslog") 
Compute Engine 虚拟机身份验证日志
resource.type="gce_instance" AND
log_id("authlog") 
Compute Engine 主机错误
resource.type="gce_instance"
protoPayload.serviceName="compute.googleapis.com"
(protoPayload.methodName:"OnHostMaintenance"
OR
operation.producer:"OnHostMaintenance")
log_id("cloudaudit.googleapis.com/system_event")
resource.labels.instance_id="INSTANCE_ID"
severity=INFO 
已迁移 Compute Engine 主机
resource.type="gce_instance"
protoPayload.serviceName="compute.googleapis.com"
(protoPayload.methodName:
"compute.instances.migrateOnHostMaintenance" OR
operation.producer:
"compute.instances.migrateOnHostMaintenance")
log_id("cloudaudit.googleapis.com/system_event")
resource.labels.instance_id="INSTANCE_ID"
severity=INFO 
Compute Engine 虚拟机已终止/抢占
resource.type="gce_instance"
protoPayload.methodName=
~"compute\.instances\.(guestTerminate|preempted)"
log_id("cloudaudit.googleapis.com/system_event")
resource.labels.instance_id="INSTANCE_ID" 
已创建 Compute Engine 虚拟机实例
resource.type="gce_instance"
protoPayload.methodName:"compute.instances.insert"
log_id("cloudaudit.googleapis.com/activity")
protoPayload.request.name="INSTANCE_NAME" 
删除了以下名称的 Compute Engine 虚拟机实例
resource.type="gce_instance"
protoPayload.methodName:"compute.instances.delete"
log_id("cloudaudit.googleapis.com/activity")
protoPayload.resourceName:"INSTANCE_NAME" 
删除 ID 为 的 Compute Engine 虚拟机实例
resource.type="gce_instance"
protoPayload.methodName:"compute.instances.delete"
log_id("cloudaudit.googleapis.com/activity")
resource.labels.instance_id="INSTANCE_ID" 
Compute Engine 虚拟机实例已重启
resource.type="gce_instance"
protoPayload.methodName=~"compute\.instances\.(
stop|reset|automaticRestart|guestTerminate|
instanceManagerHaltForRestart)"
(log_id("cloudaudit.googleapis.com/activity")
OR log_id("cloudaudit.googleapis.com/system_event"))
resource.labels.instance_id="INSTANCE_ID" 
Compute Engine 安全强化型虚拟机启动完整性失败
resource.type="gce_instance"
log_id("compute.googleapis.com/shielded_vm_integrity")
jsonPayload.earlyBootReportEvent.policyEvaluationPassed="false"
resource.labels.instance_id="INSTANCE_ID" 
被客机操作系统停止的 Compute Engine 虚拟机实例
resource.type="gce_instance"
protoPayload.serviceName="compute.googleapis.com"
(protoPayload.methodName:"compute.instances.guestTerminate" OR
operation.producer:"compute.instances.guestTerminate")
log_id("cloudaudit.googleapis.com/system_event")
resource.labels.instance_id="INSTANCE_ID"
severity=INFO 
Compute Engine 安全强化型虚拟机启动文件已被屏蔽
resource.type="gce_instance"
log_id("serialconsole.googleapis.com/serial_port_1_output")
textPayload:("Security Violation")
resource.labels.instance_id="INSTANCE_ID" 
已创建永久性磁盘
resource.type="gce_disk" AND
protoPayload.methodName:"compute.disks.insert" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.resourceName: "PERSISTENT_DISK_NAME"
在单租户节点中添加的节点
resource.type="gce_node_group"
log_id("cloudaudit.googleapis.com/activity")
protoPayload.methodName=~("compute.nodeGroups.addNodes"
OR "compute.nodeGroups.insert")
resource.labels.node_group_id="NODE_GROUP_ID"
severity="INFO"
单租户节点中的自动扩缩事件
resource.type="gce_node_group"
log_id("cloudaudit.googleapis.com/system_event")
protoPayload.methodName=~("compute.nodeGroups.deleteNodes"
OR "compute.nodeGroups.addNodes")
resource.labels.node_group_id="NODE_GROUP_ID"
手动截取快照
resource.type="gce_snapshot"
log_id("cloudaudit.googleapis.com/activity")
protoPayload.methodName:"compute.snapshots.insert"
protoPayload.resourceName:"SNAPSHOT_NAME"
已截取计划快照
resource.type="gce_disk"
log_id("cloudaudit.googleapis.com/system_event")
protoPayload.methodName="ScheduledSnapshots"
protoPayload.response.operationType="createSnapshot"
protoPayload.response.targetLink="PERSISTENT_DISK_NAME"
已创建快照时间表
resource.type="gce_resource_policy"
log_id("cloudaudit.googleapis.com/activity")
protoPayload.methodName:"compute.resourcePolicies.insert"
protoPayload.request.name="SCHEDULE_NAME"
已关联快照时间表
resource.type="gce_disk"
log_id("cloudaudit.googleapis.com/activity")
protoPayload.methodName:"compute.disks.addResourcePolicies"
protoPayload.request.resourcePolicys:"SCHEDULE_NAME"
protoPayload.resourceName:"PERSISTENT_DISK_NAME"
已超出配额
resource.type="gce_instance"
protoPayload.methodName:"compute.instances.insert"
protoPayload.status.message:"QUOTA_EXCEEDED"
severity=ERROR
查询实例组中运行状况不佳的实例
resource.type="gce_instance_group"
resource.labels.instance_group_name="INSTANCE_GROUP_NAME"
jsonPayload.healthCheckProbeResult.healthState="UNHEALTHY"
以世界协调时间 (UTC) 时间格式查询某个时间范围内的实例组成员
resource.type="gce_instance_group_manager"
resource.labels.instance_group_manager_name="INSTANCE_GROUP_NAME"
jsonPayload.@type=
"type.googleapis.com/compute.InstanceGroupManagerEvent"
jsonPayload.instanceHealthStateChange.detailedHealthState="HEALTHY"
timestamp >= START_TIME timestamp <= END_TIME 
已从实例组中移除实例
resource.type="gce_instance_group"
protoPayload.methodName:"compute.instanceGroups.removeInstances"
log_id("cloudaudit.googleapis.com/activity")
resource.labels.instance_group_name="INSTANCE_GROUP_NAME"
已设置或更新实例模板
resource.type="gce_instance_group_manager"
log_id("cloudaudit.googleapis.com/activity")
protoPayload.methodName=
"v1.compute.instanceGroupManagers.setInstanceTemplate"
resource.labels.instance_group_manager_name="INSTANCE_GROUP_MANAGER"
已删除防火墙规则
resource.type="gce_firewall_rule"
log_id("cloudaudit.googleapis.com/activity")
protoPayload.methodName:"firewalls.delete"
防火墙日志
resource.type="gce_subnetwork"
log_id("compute.googleapis.com/firewall")
jsonPayload.instance.vm_name="INSTANCE_NAME"

Google Cloud Observability 查询

查询/过滤条件名称 表达式
日志接收器活动
resource.type="logging_sink" AND
log_id("cloudaudit.googleapis.com/activity")
基于日志的指标创建或更新活动
resource.type="metric" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName:(UpdateLogMetric OR CreateLogMetric)
主机的正常运行时间网址检查
resource.type="uptime_url" AND
resource.labels.host="URL"

Identity and Access Management 查询

查询/过滤条件名称 表达式
服务账号创建日志
resource.type="service_account" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName="google.iam.admin.v1.CreateServiceAccount" 
服务账号创建密钥日志
resource.type="service_account" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName="google.iam.admin.v1.CreateServiceAccountKey" 
设置访问控制政策日志
resource.type="project" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName="SetIamPolicy" 
已获得组织访问权限的外部主账号
resource.type="project" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.@type="type.googleapis.com/google.cloud.audit.AuditLog" AND
protoPayload.request.@type:"IamPolicy" AND
protoPayload.serviceData.policyDelta.bindingDeltas.member:* AND
NOT protoPayload.serviceData.policyDelta.bindingDeltas.member:"@DOMAIN_NAME.com" 
创建、修改或删除资源
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName:("create" OR "delete" OR "update")
已授予主账号角色
log_id("cloudaudit.googleapis.com/activity") AND
resource.type="project" AND
protoPayload.serviceName="cloudresourcemanager.googleapis.com" AND
protoPayload.methodName="SetIamPolicy" AND
protoPayload.serviceData.policyDelta.bindingDeltas.action="Add" AND
protoPayload.serviceData.policyDelta.bindingDeltas.member:"EMAIL_ID" 
已从主账号中移除角色
log_id("cloudaudit.googleapis.com/activity") AND
resource.type="project" AND
protoPayload.serviceName="cloudresourcemanager.googleapis.com" AND
protoPayload.methodName="SetIamPolicy" AND
protoPayload.serviceData.policyDelta.bindingDeltas.action="Remove" AND
protoPayload.serviceData.policyDelta.bindingDeltas.member:"EMAIL_ID" 
更新了自定义角色中的权限
log_id("cloudaudit.googleapis.com/activity") AND
resource.type="iam_role" AND
protoPayload.serviceName="iam.googleapis.com" AND
protoPayload.methodName:"UpdateRole" AND
resource.labels.role_name:"ROLE_ID" 

与 Kubernetes 相关的查询

如需查看管理员活动审核日志查询的概览和示例,请参阅 GKE 审核日志记录页面

集群级层查询

查询/过滤条件名称 表达式
Google Kubernetes Engine 集群操作
resource.type="gke_cluster" AND
log_id("cloudaudit.googleapis.com/activity")
Google Kubernetes Engine 集群创建
resource.type="gke_cluster" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName="google.container.v1.ClusterManager.CreateCluster"
      
Kubernetes 集群部署
resource.type="k8s_cluster" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName:"deployments"
      
Kubernetes 集群身份验证失败
resource.type="k8s_cluster" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.authenticationInfo.principalEmail="system:anonymous"
      
us-central1-b 中的 Kubernetes 集群操作和事件
resource.type="k8s_cluster" AND
resource.labels.location="us-central1-b"
      
来自用户的 Kubernetes pod 请求
resource.type="k8s_cluster" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName:"io.k8s.core.v1.pods" AND
protoPayload.authenticationInfo.principalEmail="USER_EMAIL"
      
Kubernetes 事件
resource.type="k8s_cluster" AND
log_id("events")
      
Kubernetes 端点更新
resource.type="k8s_cluster" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.request.kind="Endpoints"
      
Kubernetes 控制层面日志
resource.type="k8s_cluster" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.serviceName="k8s.io"
      
Kubernetes Engine 控制层面日志
resource.type="k8s_cluster" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.serviceName="container.googleapis.com"
      
pod 删除
resource.type="k8s_cluster" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName=~"io\.k8s\.core\.v1\.pods\.(create|delete)"
      
来自控制层面的 Kubernetes pod 审核日志
resource.type="k8s_cluster" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.resourceName="core/v1/namespaces/POD_NAMESPACE/pods/POD_NAME
      
Kubernetes pod 逐出
resource.type="k8s_cluster" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName="io.k8s.core.v1.pods.eviction.create"
      
来自控制层面的 Kubernetes 节点审核日志
resource.type="k8s_cluster" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.methodName:"io.k8s.core.v1.nodes"
      
插件管理器活动的 Kubernetes 集群控制层面
resource.type="k8s_cluster" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.authenticationInfo.principalEmail="system:addon-manager"
      
Kubernetes 控制层面错误(不包括 Conflict,这是正常的)
resource.type="k8s_cluster" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("cloudaudit.googleapis.com/activity") AND
protoPayload.status.message!="Conflict" AND
protoPayload.status.code!=0
      
Ingress 控制器事件
resource.type="k8s_cluster" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("events") AND
jsonPayload.source.component="loadbalancer-controller"
      
Service 控制器事件 (kube-controller-manager)
resource.type="k8s_cluster" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("events") AND
jsonPayload.source.component="service-controller"
      
集群自动扩缩器事件
resource.type="k8s_cluster" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("events") AND
jsonPayload.source.component="cluster-autoscaler"
      

pod 级层查询

过滤条件名称 表达式
创建期间的查询 pod
resource.type="k8s_pod" AND
resource.labels.pod_name="POD_NAME" AND
log_id("events")
      
查询 Pod 由于资源压力而终止
resource.type="k8s_pod" AND
        log_id("events") AND
        jsonPayload.reason="Evicted"
      
调度器事件
resource.type="k8s_pod" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("events") AND
jsonPayload.source.component="default-scheduler"
      
调度器事件(抢占)
resource.type="k8s_pod" AND
resource.labels.location="CLUSTER_LOCATION" AND
resource.labels.cluster_name="CLUSTER_NAME" AND
log_id("events") AND
jsonPayload.source.component="default-scheduler" AND
jsonPayload.reason="Preempted"
      

节点级层查询

过滤条件名称 表达式
节点事件
resource.type="k8s_node" AND
log_id("events")
      
查看 Kube-proxy 日志
resource.type="k8s_node" AND
log_id("kube-proxy")
      
查看 dockerd 日志
resource.type="k8s_node" AND
log_id("container-runtime")
      
查看 kubelet 错误或故障
resource.type="k8s_node" AND
log_id("kubelet") AND
jsonPayload.MESSAGE:("error" OR "fail")
      
查看 GKE 系统日志的节点日志
resource.type = "k8s_node"
logName:( "logs/container-runtime" OR
"logs/docker" OR
"logs/kube-container-runtime-monitor" OR
"logs/kube-logrotate" OR
"logs/kube-node-configuration" OR
"logs/kube-node-installation" OR
"logs/kubelet" OR
"logs/kubelet-monitor" OR
"logs/node-journal" OR
"logs/node-problem-detector")
      

命名空间查询

过滤条件名称 表达式
GKE 系统日志的容器和 pod 日志
resource.type = ("k8s_container" OR "k8s_pod")
resource.labels.namespace_name = (
"cnrm-system" OR
"config-management-system" OR
"gatekeeper-system" OR
"gke-connect" OR
"gke-system" OR
"istio-system" OR
"knative-serving" OR
"monitoring-system" OR
"kube-system")
      

容器查询

过滤条件名称 表达式
集群中所有 pod 和容器内的 stdout 容器日志
resource.type="k8s_container" AND
log_id("stdout")
      
集群中所有 pod 和容器内的容器错误日志
resource.type="k8s_container" AND
log_id("stderr") AND
severity=ERROR
      
具有特定名称的 pod 的容器错误日志
resource.type="k8s_container" AND
resource.labels.pod_name="POD_NAME" AND
severity=ERROR
      
特定 pod 中特定容器的容器错误日志
resource.type="k8s_container" AND
resource.labels.pod_name="POD_NAME" AND
resource.labels.container_name="server" AND
severity=ERROR
      
特定命名空间和容器的容器错误日志
resource.type="k8s_container" AND
resource.labels.namespace_name="istio-system" AND
resource.labels.container_name="egressgateway" AND
severity=ERROR
      
具有特定标签的 pod 的容器日志
resource.type="k8s_container" AND
labels."k8s-pod/app"="loadgenerator" AND
severity=ERROR
      
在特定节点上运行的 pod 的容器错误日志
resource.type="k8s_container" AND
labels."compute.googleapis.com/resource_name"=NODE_NAME AND
severity=ERROR
      
pod 的容器日志,该 pod 具有使用 skaffold 生成的标签
resource.type="k8s_container" AND
labels."k8s-pod/app"="loadgenerator" AND
labels."k8s-pod/skaffold_dev/run-id"=SKAFFOLD_RUN_ID
severity=ERROR
      
在 textPayload 中包含 POST 的特定 pod 的容器错误日志
resource.type="k8s_container" AND
resource.labels.pod_name="POD_NAME" AND
textPayload:"POST" AND
severity=ERROR
      
在结构化 JSON 中包含 GET 的特定 pod 的容器错误日志
resource.type="k8s_container" AND
resource.labels.pod_name="POD_NAME" AND
jsonPayload."http.req.method"="GET" AND
severity=ERROR
      
kube-system 命名空间中的容器错误日志
resource.type="k8s_container" AND
resource.labels.namespace_name="kube-system" AND
severity=ERROR
      
容器数据分析日志中的容器错误
resource.type="k8s_container" AND
log_id("clouderrorreporting.googleapis.com/insights")
      
Kubernetes 容器日志
resource.type="k8s_container" AND
resource.labels.container_name="CONTAINER_NAME"
      

控制平面查询

注意:必须启用 GKE 控制平面日志。
过滤条件名称 表达式
Kubernetes API 服务器日志
resource.type="k8s_control_plane_component"
        resource.labels.component_name="apiserver"
        resource.labels.location="CLUSTER_LOCATION"
        resource.labels.cluster_name="CLUSTER_NAME"
      
Kubernetes 调度器日志
resource.type="k8s_control_plane_component"
        resource.labels.component_name="scheduler"
        resource.labels.location="CLUSTER_LOCATION"
        resource.labels.cluster_name="CLUSTER_NAME"
      
Kubernetes Controller Manager 日志
resource.type="k8s_control_plane_component"
        resource.labels.component_name="controller-manager"
        resource.labels.location="CLUSTER_LOCATION"
        resource.labels.cluster_name="CLUSTER_NAME"
      

Logging 代理应用查询

查询/过滤条件名称 表达式
Apache 日志
resource.type="gce_instance" AND
(logName:"/apache-access" OR logName:"/apache-error")
Cassandra 日志
resource.type="gce_instance" AND
log_id("cassandra")
Chef 日志
resource.type="gce_instance" AND
logName:"projects/PROJECT_ID/logs/chef-"
Gitlab 日志
resource.type="gce_instance"
logName:"projects/PROJECT_ID/logs/gitlab-" 
Jenkins 日志
resource.type="gce_instance" AND
log_id("jenkins")
Jetty 日志
resource.type="gce_instance" AND
logName:"projects/PROJECT_ID/logs/jetty-"
Joomla 日志
resource.type="gce_instance" AND
log_id("joomla")
Linux 系统日志
resource.type="gce_instance" AND
log_id("syslog")
Magneto 日志
resource.type="gce_instance" AND
logName:"projects/PROJECT_ID/logs/magneto-"
Mediawiki 日志
resource.type="gce_instance" AND
log_id("mediawiki")
Memcached 日志
resource.type="gce_instance" AND
log_id("memcached")
MongoDB 日志
resource.type="gce_instance" AND
log_id("mongodb")
MySQL 日志
resource.type="gce_instance" AND
log_id("mysql")
Nginx 日志
resource.type="gce_instance" AND
logName:"projects/PROJECT_ID/logs/nginx-"
PostgreSQL 日志
resource.type="gce_instance" AND
log_id("postgresql")
Puppet 日志
resource.type="gce_instance" AND
logName:"projects/PROJECT_ID/logs/puppet-"
RabbitMQ 日志
resource.type="gce_instance" AND
logName:"projects/PROJECT_ID/logs/rabbitmq-"
Redmine 日志
resource.type="gce_instance" AND
log_id("redmine")
Salt 日志
resource.type="gce_instance" AND
logName:"projects/PROJECT_ID/logs/salt-"
Slow MySQL 查询
resource.type="gce_instance" AND
log_id("mysql-slow")
Solr 日志
resource.type="gce_instance" AND
log_id("solr")
SugarCRM 日志
resource.type="gce_instance" AND
log_id("sugarcrm")
Tomcat 日志
resource.type="gce_instance" AND
log_id("tomcat")
Zookeeper 日志
resource.type="gce_instance" AND
log_id("zookeeper")

网络查询

查询/过滤条件名称 表达式
防火墙 - 所有日志
resource.type="gce_subnetwork" AND
log_id("compute.googleapis.com/firewall")
给定国家/地区的防火墙日志
resource.type="gce_subnetwork" AND
log_id("compute.googleapis.com/firewall") AND
jsonPayload.remote_location.country=COUNTRY_ISO_ALPHA_3
来自虚拟机的防火墙日志
resource.type="gce_subnetwork" AND
log_id("compute.googleapis.com/firewall") AND
jsonPayload.instance.vm_name="INSTANCE_NAME"
防火墙子网日志
resource.type="gce_subnetwork" AND
log_id("compute.googleapis.com/firewall") AND
resource.labels.subnetwork_name="SUBNET_NAME"
Compute Engine 子网流向某个子网的流量日志
resource.type="gce_subnetwork" AND
ip_in_net(jsonPayload.connection.dest_ip, "SUBNET_IP")
VPC 流日志
resource.type="gce_subnetwork" AND
log_id("compute.googleapis.com/vpc_flows")
特定端口和协议的 VPC 流日志
resource.type="gce_subnetwork" AND
log_id("compute.googleapis.com/vpc_flows") AND
jsonPayload.connection.src_port="PORT_ID" AND
jsonPayload.connection.protocol="PROTOCOL"
特定子网的 VPC 流日志
resource.type="gce_subnetwork" AND
log_id("compute.googleapis.com/vpc_flows") AND
resource.labels.subnetwork_name"=SUBNET_NAME"
特定子网前缀的 VPC 流日志
resource.type="gce_subnetwork" AND
log_id("compute.googleapis.com/vpc_flows") AND
ip_in_net(jsonPayload.connection.dest_ip,SUBNET_IP)
特定虚拟机的 VPC 流日志
resource.type="gce_subnetwork" AND
log_id("compute.googleapis.com/vpc_flows") AND
jsonPayload.src_instance.vm_name="VM_NAME"
VPN 网关日志
resource.type="vpn_gateway" AND
resource.labels.gateway_id="GATEWAY_ID"
HTTP 负载平衡器 5xx 错误
resource.type="http_load_balancer" AND
httpRequest.status>=500
HTTP 负载平衡器向 PHPMyAdmin 发出的请求
resource.type="http_load_balancer" AND
httpRequest.request_url:"phpmyadmin"

安全日志记录查询

查询/过滤条件名称 表达式
审核日志 - 全部
logName:"cloudaudit.googleapis.com"
审核日志 - Access Transparency (AXT)
log_id("cloudaudit.googleapis.com/access_transparency")
审核日志 - 管理员活动
log_id("cloudaudit.googleapis.com/activity")
审核日志 - 数据访问
log_id("cloudaudit.googleapis.com/data_access")
审核日志 - 系统事件
log_id("cloudaudit.googleapis.com/system_event")

问题排查

如需了解如何排查使用 Logs Explorer 时的常见问题,请参阅使用 Logs Explorer:问题排查

后续步骤

如需详细了解可用于自定义这些查询的查询语法,请参阅日志记录查询语言

如需详细了解如何在 Google Cloud 控制台中进行查询,请参阅使用 Logging 查询语言构建查询