Logging日志路由

Logging日志路由

通过Logging的Logs Router功能,可以将Project中的日志路由到其他Logs Storage上或其他Project上。

关于日志路由的详细介绍:https://cloud.google.com/logging/docs/routing/overview

一、介绍:

日志路由器:

在调用entries.write期间,日志条目会发送到logName字段中指定的 Google Cloud 资源

Cloud Logging 通过 Cloud Logging API 接收日志条目,这些条目在此 API 中通过日志路由器进行传递。日志路由器中的接收器会根据现有包含过滤器排除过滤器检查每个日志条目,以确定日志条目应发送到哪些目标位置(包括 Cloud Logging 存储桶)。您可以使用接收器的组合将日志路由到多个目标位置。

日志接收器:

接收器控制 Cloud Logging 路由日志的方式。通过接收器,您可以将部分或全部日志路由到支持的目标位置

使用的场景,如:

  • 存储不太可能读取但必须出于合规性目的而保留的日志。
  • 以对您有用的格式将日志整理到存储桶中。
  • 针对日志使用大数据分析工具。
  • 将日志流式传输到其他应用、其他存储区或第三方。

支持的目标:

  • Cloud Storage:存储在 Cloud Storage 存储桶中的 JSON 文件;提供经济实惠的长期存储空间。
  • BigQuery:在 BigQuery 数据集中创建的表;提供大数据分析功能。
  • Pub/Sub:传送至 Pub/Sub 主题的 JSON 格式的消息;支持将 Splunk 等第三方服务与 Logging 集成。
  • Cloud Logging Bucket:保存在日志存储桶中的日志条目;提供具有可自定义保留期限的 Cloud Logging 存储空间。
  • Splunk
  • Other project

_Required_Default

Cloud Logging 会为每个 Cloud 项目、结算帐号、文件夹和组织提供两个预定义接收器:_Required_Default。在资源中生成的所有日志都会通过这两个接收器自动处理,然后存储在相应命名的_Required_Default 存储桶中。

_Required 日志存储分区

日志保留400天,无法修改、停用、删除存储分区;提取价格和存储价格都不适用于存储在 _Required 日志存储分区中的日志数据。

Cloud Logging 会自动将以下类型的日志路由到 _Required 存储分区:

_Default 日志存储分区

_Required 存储分区提取的任何日志条目都由 _Default 接收器路由到 _Default 存储分区,除非您停用或修改 _Default 接收器。

无法删除 _Default 存储分区,保留在 _Default 存储分区中的日志会保留 30 天,除非您为该存储分区配置自定义保留期限

Cloud Logging 价格适用于保存在 _Default 存储分区中的日志数据。

自定义存储分区

可将日志存储至指定地区,见表:https://cloud.google.com/logging/docs/routing/overview#regionalization

二、日志存储桶

创建存储桶

创建日志存储桶:https://cloud.google.com/logging/docs/buckets#create\_bucket

  1. 在Console点击“create log bucket”

  2. 命名日志存储桶名称及日志保留时长


注:

已创建的日志存储桶,不支持修改日志的保存地区;

支持修改保存时长、日志存储桶描述/备注信息;

已删除的存储桶会以待处理状态保留 7 天,在此期间 Logging 会继续将日志路由到该存储桶。您可以通过以下方法停止将日志路由到已删除的存储桶:删除将该存储桶作为目标位置的日志接收器,或者修改这些接收器的过滤条件;

待删除的存储桶会计入配额每个 Cloud 项目的存储桶(直到其完全删除)。

锁定存储桶

警告:锁定日志存储桶是不可逆转的(合规保留策略)。

当您根据更新锁定存储桶时,其中包括锁定存储桶的保留政策。保留政策锁定后,您将无法删除存储桶,除非存储桶中的所有日志都已达到存储桶的保留期限。

如需阻止任何人更新或删除日志存储桶,请锁定该存储桶。如需锁定存储桶,请执行以下操作:

如需锁定您的存储桶,请运行带有 --locked 标志的 gcloud logging buckets update 命令:

gcloud logging buckets update BUCKET_ID --location=LOCATION --locked

例如:

gcloud logging buckets update my-bucket --location=global --locked

仅支持gcloud、api方式

日志概览:

日志存储页面会显示 Cloud 项目的统计信息摘要:


系统会报告以下统计信息:

  • 当前总数据量:您的 Cloud 项目从当前日历月第一天提取的日志数据量。
  • 上月数量:您的 Cloud 项目在上个日历月中提取的日志数据量。
  • 预计 EOM 数量:根据当前使用情况,Cloud 项目在当前日历月结束时将提取的估算日志数据量。

日志提取量统计信息不包含_Required存储桶。无法排除或停用该存储桶中的日志。


该表列出了每个日志存储桶的以下特性:

  • 名称:创建存储桶时,为存储桶指定的名称。
  • 说明:创建存储桶时为其分配的说明。
  • 保留期限:Cloud Logging 将对存储桶数据进行存储的天数。
  • 区域:用于对存储桶数据的地理位置进行存储。
  • 状态:存储桶处于锁定状态还是解锁状态。

如果某个存储桶正在等待 Cloud Logging 删除,其表条目将使用警告 warning 注明。

查看指定日志存储桶的日志信息

三、日志接收器

创建接收器

https://cloud.google.com/logging/docs/export/configure\_export\_v2?hl=zh-cn#creating\_sink


注:

对接收器所做的任何更改可能需要几分钟时间才能应用。

恢复 _Default 接收器过滤条件

如果您修改了 _Default 接收器的过滤条件,则可能需要恢复默认过滤条件。为此,请输入以下包含过滤器:

  NOT LOG_ID("cloudaudit.googleapis.com/activity") AND NOT \
  LOG_ID("externalaudit.googleapis.com/activity") AND NOT \
  LOG_ID("cloudaudit.googleapis.com/system_event") AND NOT \
  LOG_ID("externalaudit.googleapis.com/system_event") AND NOT \
  LOG_ID("cloudaudit.googleapis.com/access_transparency") AND NOT \
  LOG_ID("externalaudit.googleapis.com/access_transparency")

四、其他

存储目标日志更新频率

https://cloud.google.com/logging/docs/export/using\_exported\_logs

目标 路由频率
Cloud Storage 存储桶 每小时批次
BigQuery 表 近乎实时
Pub/Sub 主题 近乎实时
Cloud Logging 存储分区 近乎实时
第三方平台 (Splunk) 近乎实时

将已有的日志信息同步到bucket上

https://cloud.google.com/logging/docs/routing/copy-logs

常见问题排查

https://cloud.google.com/logging/docs/export/troubleshoot

配额

https://cloud.google.com/logging/quotas

费用:

Cloud Logging 价格摘要

https://cloud.google.com/stackdriver/pricing#logging-pricing-summary

特征 价格1 每月免费配额 生效日期
Logging 提取 提取的日志 \$0.50/GiB;这种一次性提取费用包含长达 30 天的存储费用 每个项目的前 50 GiB 2018 年 7 月 1 日
Logging 存储 保留时间超过 30 天的日志 \$0.01/GiB;根据留存率按月结算。 默认保留期限内保留的日志不会产生存储费用。 2022 年 10 月 3 日
详细费用介绍

https://cloud.google.com/stackdriver/pricing#logging-costs

注:Logging日志路由到其他google cloud产品时(如bq、gcs、pub/sub),是不收取费用,由目标google cloud收取使用费。

五、其他坑

  1. 在default添加排除项的方式过滤resource.type="http_load_balancer" 不生效。
  2. 直接添加如下内容,也无法实现过滤LB的日志
NOT LOG_ID("cloudaudit.googleapis.com/activity") AND NOT LOG_ID("externalaudit.googleapis.com/activity") AND NOT LOG_ID("cloudaudit.googleapis.com/system_event") AND NOT LOG_ID("externalaudit.googleapis.com/system_event") AND NOT LOG_ID("cloudaudit.googleapis.com/access_transparency") AND NOT LOG_ID("externalaudit.googleapis.com/access_transparency") AND NOT (resource.type="http_load_balancer")

版权声明:
作者:WangGaoli
链接:https://wanggaoli.com/3654.html
来源:王高利的个人博客
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>
文章目录
关闭
目 录