您可以使用对象存储OSS的清单功能获取存储空间(Bucket)中指定文件(Object)的数量、大小、存储类型、加密状态等信息。相对于GetBucket (ListObjects)接口,在海量Object的列举场景中,建议您优先使用清单功能。

注意事项

  • 通过控制台最多可配置10条清单规则,通过SDK或者命令行工具ossutil最多可配置1000条清单规则。
  • 使用Bucket清单功能会产生一定的费用,公测期间仅收取API请求费用和清单文件存储费用。
  • 在您删除清单规则前,OSS会按照清单规则持续生成清单文件。为避免清单文件占用您过多的存储空间,请及时清理不再需要的清单文件。

更多信息,请参见存储空间清单

操作步骤

  1. 登录OSS管理控制台
  2. 单击Bucket列表,之后单击目标Bucket名称。
  3. 选择基础设置 > Bucket清单,之后单击设置
  4. 单击创建清单,在设置清单报告规则对话框设置如下参数:
    参数 说明
    状态 设置清单任务的状态。可以选择启动禁用
    规则名称 设置清单任务的名称。只能包含小写字母、数字、短划线(-),且不能以短划线(-)开头或结尾。
    目标Bucket 选择存储清单文件的目标Bucket。

    配置清单的源Bucket与存放清单文件的目标Bucket可以相同也可以不同,但是必须属于同一账号下的相同地域。

    清单报告目录 设置清单报告存储的目录。
    • 如果要将清单报告保存在Bucket根目录下,请将此项置空。
    • 如果要将清单报告保存在Bucket非根目录下,请填写不包含Bucket名称在内的目录完整路径。

      例如,当您需要将清单报告保存在目标存储空间examplebucket的exampledir1目录下,则填写为exampledir1。当您需要将清单报告保存在exampledir1目录下的子目录exampledir2,则填写为exampledir1/exampledir2

    清单报告导出周期 设置清单报告的生成周期。可选择每周每天
    建议您根据源Bucket内的文件数量配置清单任务:
    • 文件数量小于10亿,可以以天为单位生成清单文件。
    • 文件数量为小于100亿,可以以周为单位生成清单文件。
    • 文件数量大于100亿,建议以周为单位,并针对不同的文件前缀设置不同的清单任务,保证每个清单任务涉及的文件不超过100亿个。
    清单报告加密选项 是否加密清单文件。
    • :不加密。
    • AES256:使用AES256加密算法加密清单文件。
    • KMS:使用KMS密钥加密清单文件。

      您可以选择使用OSS托管的KMS密钥或在KMS平台创建一个与目标Bucket相同地域的KMS密钥。KMS密钥配置步骤,请参见创建密钥

      说明 使用KMS密钥功能时会产生少量的KMS密钥API调用费用,费用详情请参考KMS计费标准
    对象版本 选择清单扫描的文件版本。

    如果Bucket已开启版本控制,可选择导出目标文件的当前版本所有版本。更多信息,请参见版本控制介绍

    如果Bucket未开启版本控制,默认导出所有文件。

    按前缀匹配 设置清单规则扫描Object的前缀。
    • 如果要扫描整个Bucket内的所有Object,请将此项置空。
    • 如果要扫描Bucket某个目录下的所有Object,请填写不包含Bucket名称在内的目录完整路径。

      例如,当您需要扫描目标存储空间examplebucket根目录exampledir1下的所有Object,则填写为exampledir1/。如果您需要扫描根目录exampledir1下子目录exampledir2的所有Object,则填写为exampledir1/exampledir2/

    说明 如果设置的前缀没有匹配Bucket内的任意Object,则不生成清单文件。
    清单内容可选信息 选择您希望导出的文件信息,包括Object大小存储类型最后更新时间ETag分片上传状态加密状态
  5. 选中我知晓并同意授予阿里云OSS服务访问Bucket资源的权限后,单击确定
    涉及Object较多时,生成清单文件需要一定的时间。如果您希望第一时间获知清单文件已生成的消息,建议您在生成清单文件的目标Bucket中配置事件通知规则,并将事件类型设置为PutObject。当清单文件生成之后,您会收到Object生成的提醒。配置事件通知方式,请参见设置事件通知规则