上云无忧 > 文档中心 > 百度智能云对象存储BOS设置访问日志(开发者)
对象存储BOS
百度智能云对象存储BOS设置访问日志(开发者)

文档简介:
当用户需要跟踪访问 BOS 的请求时可以对 Bucket 开启访问日志功能。每条访问日志记录了单个访问请求的详细信息,包括请求者、Bucket 名称、请求时间和请求操作等。日志记录功能可以应用在访问统计和安全审核等方面。
*此产品及展示信息均由百度智能云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

概述

当用户需要跟踪访问 BOS 的请求时可以对 Bucket 开启访问日志功能。每条访问日志记录了单个访问请求的详细信息,包括请求者、Bucket 名称、请求时间和请求操作等。日志记录功能可以应用在访问统计和安全审核等方面。当一个 Bucket 开启访问日志功能后,会自动将对这个 Bucket 的访问请求,以小时为单位,按照固定的命名规则,生成日志文件写入用户指定的 Bucket。

说明:访问日志存储到目标 Bucket 是一个“尽力而为”的过程。大多数情况下,一个访问请求从发生,到对应日志存储到目标 Bucket 会在 2-3 个小时内完成。但受到网络环境等因素影响,有的日志可能会延迟较长时间才能存储到目标 Bucket。

操作方式

您可以通过 Console 控制台和 API 来设置访问日志,具体如下:

  • 通过 Console 控制台设置访问日志请参考设置访问日志。
  • 通过 API 创建设置访问日志:

    • PutBucketLogging
    • GetBucketLogging
    • DeleteBucketLogging

日志命名规则

存储访问日志记录的Object命名规则为<TargetPrefix><SourceBucketName>-YYYY-mm-DD-HH-MM-SS-UniqueString,例如mylog/mybucket-2016-05-17-10-00-00-00000。其中

  • TargetPrefix为用户指定的前缀,即示例中的mylog/;
  • SourceBucketName为源Bucket名称,即示例中的mybucket;
  • YYYY、mm、DD、HH、MM和SS分别表示该日志所记录访问请求中的最小时间戳对应的年、月、日、小时、分钟和秒;
  • UniqueString为BOS系统生成的字符串。用于唯一标识这个日志文件,即示例中的00000。

日志格式

输出字段 例子 说明
Time 2016-09-05T09:02:03+08:00 发起请求的时间
Bucket Owner e13b12d0131b4c8bae959df4969387b8 Bucket的Owner ID
Bucket samplebucket 请求访问的Bucket名字
Key dir/sample.jpg 请求访问的Object名字
Reserve - 保留字段
Remote IP 111.30.20.12 请求者IP地址
Requester e13b12d0131b4c8bae959df4969387b8 请求者的ID
Request ID a94dbe12-717e-4e72-bcf2-0aa4a3100360 用于唯一标志该请求的UUID,同Header中的x-bce-request-id
Operation GetObject 请求对应的API
Request Host bj.bcebos.com HTTP请求的Host请求头
Request URI "GET/v1/tables.xml" HTTP请求中的URI,需要用双引号引用
HTTP Status 200 BOS返回的HTTP状态码
Error Code InvalidURI BOS返回的错误码
Bytes Send 2314 用户从BOS下载的流量
Object Size 1024 Object大小,单位为Bytes
Total Time(ms) 11 从开始接收请求到相应返回的总时长,单位为毫秒
Server Cost Time (ms) 10 从接收完所有请求到开始响应用户请求的总时长,单位为毫秒。目前该字段取值为-
Referer <https://cloud.baidu.com/product/bos.html> HTTP请求的Referer请求头
User Agent "curl/7.33.0" HTTP请求的User Agent请求头
Storage Class STANDARD 对象的存储类型
Multiple Delete "abc%0Adef" Multiple Delete删除的对象信息,'%0A'为分隔符,用于分隔多个对象
Reserve - 保留字段
Reserve - 保留字段

日志样例:

2016-09-05T09:02:03+08:00 e13b12d0131b4c8bae959df4969387b8 bos-logging - - 127.0.0.1 e13b12d0131b4c8bae959df4969387b8 98a20094-2002-4950-899d-9347244c71da GetBucket bj.bcebos.com "/bos-logging?delimiter=%2F&maxKeys=1000&prefix=" object="-" 200 success 2335 - 10 - "-" "bce-sdk-python/0.8.9/2.7.3 (default, Jun 24 2016, 15:08:42) [GCC 3.4.5 20051201 (Red Hat 3.4.5-2)]/linux2" - - - -

说明:

  • 日志中各个字段由空格分隔。
  • BOS的Log中,某些字段可能存在空格,这些字段(如 “Referrer” )在生成的时候,外部通过引号包括。
  • Reserve字段为保留字段,Log中用 “-”表示。
  • BOS以小时为单位生成Bucket访问的Log文件,但并不表示这个小时的所有请求都记录在这个小时的Log文件内,也有可能出现在上一个或者下一个Log文件中。
  • BOS生成Log文件会占用目标Bucket的存储空间。日志访问功能是免费的,但日志所占用的存储空间还是照常计费。用户可以像操作普通Object一样操作日志文件。
  • 日志文件在目标Bucket生成后,BOS不会主动清理这些日志文件。
相似文档
  • 百度智能云提供 Bucket 标签管理功能,通过给每个 Bucket 添加标签,从而快速分类和识别管理这些资源。 操作方式: BOS 为开发者提供了在 BOS 控制台对 Bucket 进行标签设置的方法。 您可以通过 Console 控制台管理 Bucket 标签请参考管理Bucket标签。
  • BOS 支持为已创建的 Bucket 设置多种域名,从而对存储的数据进行发布。 操作方式: 您可以通过 Console 控制台、SDK 和 API 来对存储的数据进行发布,具体如下: 通过 Console 控制台进行数据发布相关操作:
  • 用户在创建 Bucket 之后,即可上传文件保存在 Bucket 中。用户可以通过 PutObject 接口上传单个小于 5GB 的文件。 用户可以通过使用控制台上传单个文件,BOS 也同时支持使用 API 与使用 SDK 来进行单个 Object 的上传,具体如下:
  • 用户可以以 HTML 表单的形式上传 Object ,上传的 Object 不能超过 5GB 。 适用场景: 网站可以将表单上传嵌入 HTML 页面,直接把用户上传的文件传到 BOS ,不需要在网站服务器保存。
  • 用户可以使用分块上传API来上传最大 5TB 的 Object 数据。 分块上传和断点续传适用但不限于以下场景: 需要支持断点上传。 上传超过 5GB 大小的文件。 网络条件较差,和 BOS 的服务器之间的连接经常断开。 需要流式地上传文件。 上传文件之前,无法确定上传文件的大小。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部