本文档提供了一些建议的查询,以便您使用 Google Cloud 控制台中的日志浏览器更轻松地查找重要日志。所列查询均采用 Logging 查询语言编写,可在日志浏览器、Logging API 或命令行界面中使用。
日志浏览器使用布尔表达式指定项目中的部分日志条目。您可以使用这些查询选择特定日志或日志服务中的日志条目,或选择满足元数据或用户定义字段相关条件的日志条目。
准备工作
确保您具有使用日志浏览器构建查询的正确 Identity and Access Management 权限或角色。如需详细了解必要的 IAM 权限,请参阅 Google Cloud 控制台的权限。
开始使用
-
在 Google Cloud 控制台中,转到 Logs Explorer 页面。
如果您使用搜索栏查找此页面,请选择子标题为 Logging 的结果。
选择要查看其日志的相应 Google Cloud 项目或其他 Google Cloud 资源。
使用示例查询
若要应用下表中的查询,请点击相应表达式的 content_copy 内容复制图标,然后将复制的表达式粘贴到日志浏览器的查询编辑器字段中。
以下屏幕截图展示了“查询”窗格:
如果您没有看到查询编辑器字段,请启用显示查询。
查看查询表达式后,点击运行查询。与查询匹配的日志会列在查询结果下。
本页面的后面部分列出的一些查询包括您应该用有效值替换的变量。例如,如果查询包含 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
函数,请参阅 Logging 查询语言:函数。
如需了解如何在 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" |
审核 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 Run functions 查询
查询/过滤条件名称 | 表达式 |
---|---|
Cloud function 错误 | 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 虚拟机 authlog | resource.type="gce_instance" AND log_id("authlog") |
Compute Engine 主机错误 | resource.type="gce_instance" protoPayload.serviceName="compute.googleapis.com" (protoPayload.methodName:"compute.instances.hostError" OR operation.producer:"compute.instances.hostError") log_id("cloudaudit.googleapis.com/system_event") resource.labels.instance_id="INSTANCE_ID" severity=INFO |
Compute Engine 主机内存提醒 | resource.type="gce_instance" AND protoPayload.serviceName="compute.googleapis.com" AND (jsonPayload.methodName:"compute.instances.host_event_notify" OR operation.producer:"compute.instances.host_event_notify") AND log_id("cloudaudit.googleapis.com/host_event_notify") AND resource.labels.instance_id="INSTANCE_ID" AND severity=CRITICAL |
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.serviceName="compute.googleapis.com" (protoPayload.methodName="compute.instances.scratchDiskCreationFailed" OR operation.producer: "compute.instances.scratchDiskCreationFailed) 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.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" |
已删除的 Compute Engine 虚拟机实例(包含 ID) | 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 控制器管理器日志 |
resource.type="k8s_control_plane_component" resource.labels.component_name="controller-manager" resource.labels.location="CLUSTER_LOCATION" resource.labels.cluster_name="CLUSTER_NAME" |
TPU 工作负载查询
注意:必须启用 GKE 系统和工作负载日志记录。过滤条件名称 | 表达式 |
---|---|
前缀相同的所有 TPU 节点内的 stdout 容器日志 |
resource.type="k8s_container" AND labels."compute.googleapis.com/resource_name"=~"TPU_NODE_PREFIX.*" AND log_id("stdout") |
具有相同前缀的所有 TPU 节点中的容器错误日志 |
resource.type="k8s_container" AND labels."compute.googleapis.com/resource_name"=~"TPU_NODE_PREFIX.*" AND log_id("stderr") AND severity=ERROR |
来自同一 GKE 作业的标准输出容器日志 |
resource.type="k8s_container" AND labels."k8s-pod/batch.kubernetes.io/job-name" = "JOB_NAME" AND log_id("stdout") |
来自同一 GKE 作业的容器错误日志 |
resource.type="k8s_container" AND labels."k8s-pod/batch.kubernetes.io/job-name"="JOB_NAME" AND log_id("stderr") AND severity=ERROR |
来自同一 GKE JobSet 的标准输出容器日志 |
resource.type="k8s_container" AND labels."k8s-pod/jobset_sigs_k8s_io/jobset-name"="JOBSET_NAME" AND log_id("stdout") |
来自同一 GKE JobSet 的容器错误日志 |
resource.type="k8s_container" AND labels."k8s-pod/jobset_sigs_k8s_io/jobset-name"="JOBSET_NAME" AND log_id("stderr") AND severity=ERROR |
第三方应用查询
以下查询针对旧版日志记录代理收集的日志使用默认日志 ID。如果您使用 Ops Agent 收集日志,则日志名称的配置可能有所不同。如需详细了解 Ops Agent 和应用日志,请参阅从第三方应用收集日志。
查询/过滤条件名称 | 表达式 |
---|---|
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" |
审核日志 - 访问透明度 (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") |
问题排查
如需了解如何排查使用日志浏览器时的常见问题,请参阅使用日志浏览器:问题排查。
后续步骤
如需详细了解可用于自定义这些查询的查询语法,请参阅 Logging 查询语言。
如需详细了解如何在 Google Cloud 控制台中进行查询,请参阅使用 Logging 查询语言构建查询。