查看路由到 Cloud Logging 存储分区的日志

本文档介绍了如何查找已路由到 Cloud Logging 存储分区的日志条目。日志存储分区是 Google Cloud 项目中用于存储日志数据的 Cloud Logging 存储容器。您可以创建日志接收器,将所有或一部分日志路由到 Cloud Logging 中的任何存储桶。这种灵活性让您可以选择将日志存储到哪个 Google Cloud 项目中,以及与其一起存储哪些其他日志。

您路由到 Cloud Logging 存储分区的日志会立即可用。

如需了解如何查看路由到其他目的地的日志,请参阅以下文档:

准备工作

如需了解如何创建和管理日志存储分区,请参阅以下文档:

如需查看接收器的概念讨论,请参阅路由和存储模型概览:接收器

如需了解如何路由日志,请参阅将日志路由到支持的目的地

查看日志

如需排查问题并查看日志存储桶中的各个日志条目,请执行以下操作:

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

    前往 Logs Explorer

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

  2. 操作工具栏中,选择优化范围
  3. 优化范围对话框中,选择日志视图
  4. 选择一个或多个日志视图,然后点击应用

    如需了解如何运行查询,请参阅在日志浏览器中构建查询

如需对已升级为使用 Log Analytics 的日志存储桶中存储的日志条目执行分析,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往 Log Analytics 页面:

    转到 Log Analytics

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

  2. 日志视图列表中,找到相应视图,然后选择查询查询窗格会填充默认查询,其中包含要查询的日志视图。

    您还可以在查询窗格中输入查询,或修改显示的查询。

    如需查询日志存储桶中的所有日志,请选择日志存储桶的 _AllLogs 视图。

  3. 点击工具栏中的运行查询

    系统会执行查询,并在结果标签页中显示查询结果。

    您可以使用工具栏选项设置查询格式、清除查询,以及打开 BigQuery SQL 参考文档。

    如需了解如何运行查询,请参阅在 Log Analytics 中查询和查看日志

组织日志条目

Logging 日志条目是类型为 LogEntry 的对象。

具有相同日志类型的日志条目(在 LogEntry 参考中称为 [LOG_ID])通常具有相同的格式。下表显示了日志条目示例:

syslog

以下是 Compute Engine syslog 的示例:

{
  insertId: "4zymupf98ac6v"
  jsonPayload: {
    message: "Jul 15 13:36:33 my-instance dhclient[328]: DHCPACK of 10.240.0.48 from 169.254.169.254"
  }
  logName: "projects/my-gcp-project-id/logs/syslog"
  receiveTimestamp: "2024-07-15T13:36:33.400534415Z"
  resource: {
    labels: {
      instance_id: "0123456789" (instance_name: my-instance)
      project_id: "my-gcp-project-id"
      zone: "us-central1-a"
    }
    type: "gce_instance"
  }
  timestamp: "2024-07-15T13:36:33.097822178Z"
}

request_log

App Engine request_log 中的日志条目包含 protoPayload 字段,此字段保存着类型为 RequestLog 的对象:

{
  httpRequest: {
    status: 200
  }
  insertId: "669525c0000d39d1eab2bb03"
  labels: {1}
  logName: "projects/my-gcp-project-id/logs/appengine.googleapis.com%2Frequest_log"
  operation: {4}
  protoPayload: {
    @type: "type.googleapis.com/google.appengine.logging.v1.RequestLog"
    appEngineRelease: "1.9.71"
    appId: "s~my-gcp-project-id"
    startTime: "2024-07-15T13:36:00.861387Z"
    ...
  }
  receiveTimestamp: "2024-07-15T13:36:01.169966997Z"
  resource: {2}
  spanId: "7925702051311044593"
  timestamp: "2024-07-15T13:36:00.861387Z"
  trace: "projects/my-gcp-project-id/traces/8a4fab4bd4fbafac2a0fa901c1485847"
  resource: {
    labels: {
      module_id: "default"
      project_id: "my-gcp-project-id"
      version_id: "20200221t133337"
      zone: "us14"
    }
    type: "gae_app"
  }
}

activity

activity 日志是管理员活动审核日志。此类日志的载荷是 AuditLog 类型的 JSON 表示法:

{
  insertId: "dlu8qwc69c"
  labels: {
    compute.googleapis.com/root_trigger_id: "a97f30b1-45ab-4c12-9309-8e8af3bb011f"
  }
  logName: "projects/my-gcp-project-id/logs/cloudaudit.googleapis.com%2Factivity"
  operation: {
    id: "operation-1721047950764-61d48b3bf2b65-1ba1f256-82e9b5fd"
    last: true
    producer: "compute.googleapis.com"
  }
  protoPayload: {
    @type: "type.googleapis.com/google.cloud.audit.AuditLog"
    authenticationInfo: {...}
    methodName: "v1.compute.instances.insert"
    request: {...}
    requestMetadata: {...}
    resourceName: "projects/my-gcp-project-id/zones/us-central1-f/instances/my-instance"
    serviceName: "compute.googleapis.com"
  }
  receiveTimestamp: "2024-07-15T12:52:41.376292847Z"
  resource: {
  labels: {
    instance_id: "2891866457752773984" (instance_name: my-instance)
    project_id: "my-gcp-project-id"
    zone: "us-central1-f"
    }
    type: "gce_instance"
  }
  severity: "NOTICE"
  timestamp: "2024-07-15T12:52:40.965840Z"
}

问题排查

如果接收器的目标位置缺少日志,或者您怀疑接收器未正确路由日志,请参阅排查路由和接收器问题

价格

Cloud Logging 不会对将日志路由到受支持的目标位置收费;但目标位置可能会收费。除了 _Required 日志存储桶外,Cloud Logging 会对将日志流式传输到日志存储桶以及存储时间超过日志存储桶默认保留期限的部分收费。

Cloud Logging 不会对复制日志、定义日志范围或通过日志浏览器Log Analytics 页面发出的查询收费。

有关详情,请参阅以下文档: