GCS中事件信息获取方法汇总

一、背景

获取GCS中对象的事件信息,目前官方文档中给出的方法分别是:

二、各类方法的优缺点

  1. 使用Pub/Sub消息队列

保证消息可达,不丢失

对消息有缓存能力,不会对处理程序造成冲击

Pub/Sub按量收费(每月前50G免费)

  1. 使用Cloud Functions

底层使用的是Pub/Sub,优缺点同上

Cloud Functions使用事件触发执行,可以更好、及时的完成消息处理

  1. 使用审计日志

审计日志包含管理员活动审计日志和数据访问审计日志

管理员活动审计日志默认开启,数据访问审计日志默认关闭

管理员活动审计日志包含修改 Cloud 项目、存储桶或对象的配置或元数据的 ADMIN_WRITE 操作

数据访问审计日志包含修改对象或读取 Cloud 项目、存储桶或对象的操作

数据访问审计日志包含ADMIN_READ、DATA_READ、DATA_WRITE三个子类

详细信息请看:https://cloud.google.com/storage/docs/audit-logging#operations

  1. 通过使用情况日志

使用情况日志每小时创建一次

主要用于记录访问的详细信息,常用于静态网站的访问记录

  1. 使用自定义WebHook

自定义的WebHook无法保证其可靠性、可用性

自定义的WebHook没有额外的费用

三、配置汇总

  1. 使用Pub/Sub消息队列

gsutil notification create -t TOPIC_NAME -f json gs://BUCKET_NAME

参考:https://cloud.google.com/storage/docs/reporting-changes

  1. 使用Cloud Functions

参考:https://cloud.google.com/functions/docs/tutorials/storage-1st-gen#functions-prepare-environment-python

参考:https://cloud.google.com/functions/docs/tutorials/storage

  1. 使用审计日志

参考:https://cloud.google.com/storage/docs/audit-logging

  1. 通过使用情况日志

gsutil mb gs://example-logs-bucket

gsutil iam ch group:cloud-storage-analytics@google.com:legacyBucketWriter gs://example-logs-bucket

gsutil logging set on -b gs://example-logs-bucket [-o log_object_prefix ] gs://example-bucket

gsutil logging get gs://example-bucket

参考:https://cloud.google.com/storage/docs/access-logs

  1. 使用自定义WebHook

# 配置语法

gsutil notification watchbucket [-i ChannelId] [-t ClientToken] ApplicationUrl gs://BucketName

# 配置实例

gsutil notification watchbucket -i my-channel-id -t my-client-token https://example.com/notify gs://example-bucket

参考:https://cloud.google.com/storage/docs/object-change-notification

展开阅读全文

页面更新:2024-04-14

标签:事件   详细信息   信息   队列   对象   管理员   消息   情况   方法   数据   日志

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top