设置日志检索

2025-06-19   访问量:1012

简介

对象存储(Cloud Object Storage,COS)基于日志服务(Cloud Log Service,CLS)提供日志检索功能。日志检索,又称实时日志功能,能够记录存储桶相关的各种请求日志,并实现对日志数据的实时检索与分析。您可以在 COS 控制台快速为存储桶开启此功能,进一步帮助您完成异常事件回溯和问题定位等工作。更多介绍信息请参见 CLS 检索分析概述

注意:

如需为 COS 存储桶开启实时日志功能,需先 开通 CLS 日志服务

使用实时日志查询功能,会产生费用,该费用由日志服务CLS收取,详细的计费标准请参见 日志服务计费概述

目前 COS 的日志检索功能支持的地域包括北京、上海、广州、成都、南京、重庆、中国香港、新加坡、东京、美西硅谷、法兰克福。后续会计划支持更多地域,请关注产品动态。

COS 不保证日志数据100%准确性,仅作为参考,不作为计量和计费依据。

操作步骤

开通日志检索

1. 登录 对象存储控制台

2. 在左侧导航栏中,单击存储桶列表,进入存储桶列表管理页面。

3. 找到需要开启日志检索的存储桶,单击该存储桶名称,进入该存储桶管理页面。

4. 在左侧导航栏中,选择日志管理 > 日志检索

5. 日志检索页面,若当前存储桶未开通实时日志功能,请单击立即开通进行使用。

说明:

COS 基于日志服务 CLS 提供了访问日志实时查询,默认保存近7天数据。

开通成功后,该存储桶的访问日志将被投递到与存储桶同地域的 CLS 日志主题中,日志主题名称为 cos-log-store。首次开通需授权。







开启字段统计分析

索引配置是进行检索分析的必要条件,只有开启索引才能对日志进行检索分析。索引配置较为复杂,建议您使用 CLS 编辑索引配置 中的推荐配置,能够满足大多数使用需求。更多相关信息请参见 CLS 索引配置



日志检索支持按照字段进行快速统计分析,无需填写查询语句。COS 默认支持字段请参见 日志字段说明,更多信息请参见 CLS 快速分析

注意:

若您希望对日志按照某字段进行统计分析,请提前为该字段开启统计,可通过以下两种方式快速开启。

方式一:在索引配置开启

说明:

通过该方式,可以对已开启统计的字段进行关闭。

1. 单击索引配置,进入索引配置页。







2. 在索引配置页面单击右上角的编辑,找到希望开启统计的字段,打开开关,确认无误后单击确定完成配置。

注意:

索引规则编辑后仅对新写入的日志生效,已有数据不会更新。如需更新已有数据,需在保存索引配置后,对已有历史数据重建索引







3. 开启成功后,单击对应字段可查看该字段对应的TOP5日志情况。单击某一数字,可选择在统计图表中查看查看变化趋势,同时将自动生成对应的检索分析语句和图表。单击更多值可查看在某个时间段(默认为近15分钟)的统计数据。









方式二:在原始日志页开启

1. 进入原始日志页。

2. 找到希望开启统计分析的字段,单击立即开启。

说明:

如需关闭已开启统计的字段,请使用上方的索引配置。







输入检索分析语句

注意:

检索分析语句的使用介绍可参见 语法规则,存储桶访问日志分析方法详见 COS 访问日志分析最佳实践

检索分析语句由检索条件SQL 语句组成,输入检索分析语句,对访问日志进行检索和统计分析。

检索条件:指定日志需要匹配的条件,返回符合该条件的日志。例如使用resHttpCode:"404"检索响应状态码为404的应用请求日志。检索条件为空或*时代表无检索条件,即检索所有日志。更多语法规则和示例信息请参见 检索条件语法

SQL 语句:针对符合检索条件的日志进行统计分析,返回统计分析结果。例如使用resHttpCode="404" | select count(*) as logCounts limit 10000统计响应状态码为404的日志数量。更多语法使用和示例信息请参见 SQL语句语法

检索分析语句输入模式,支持交互模式、语句模式两种。可单击下拉选择输入模式,进行切换。检索条件支持两种语法规则:CQL 和 Lucene,更多语法规则和示例信息请参见 检索条件语法

交互模式:通过鼠标点击指定检索条件及统计分析规则,自动生成检索分析语句,易用性高。

语句模式:直接输入检索分析语句,需符合语法规则,灵活度高。

操作步骤

交互模式下,选择指定字段,然后配置统计分析指标,选择时间范围,单击搜索按钮即可检索该存储桶上报到 CLS 的访问日志。







语句模式下,输入检索分析语句,选择时间范围,单击搜索按钮即可检索该存储桶上报到 CLS 的访问日志。





查看日志检索结果、统计分析结果

检索成功后,在日志检索页面可查看访问日志的检索结果、统计分析结果。分别对应原始日志统计图表,支持快捷切换。详细说明如下:

原始日志:当仅通过包含检索条件时,可在原始日志中查看匹配检索条件的日志,默认按日志时间倒排。

统计图表:当检索分析语句包含 SQL 语句时,可在统计图表中查看分析结果,同时还可在原始日志中查看符合检索条件的日志,以便于对比分析统计结果及原始日志。

原始日志







支持查看当前检索条件下,指定时间范围内的日志统计情况,以柱状图展示。

默认以原始形式展示日志数据,支持切换表格、换行等自定义配置。

日志数据下仅展示“显示字段”,若您希望查看更多或者隐藏日志对应的字段信息,可通过下述三种方式实现:

列表操作:在原始日志下,左侧面板快速找到该字段,单击显示隐藏即可完成配置。





日志详情:展开某条日志查看详情,单击查看图标,即可快速隐藏或者显示某字段。针对每条日志,您还可以查看 JSON 格式的数据,并支持一键复制。除此之外,单击字段值还可以进行自定义跳转,详情参见 自定义跳转





显示指定字段:您可以切换显示原始日志或者指定字段;此外可切换默认版面和保存当前版面。







单击管理配置,可以调整默认配置的字段、日志排序,或新建版面。最后单击应用即可。









统计图表

统计图表默认以表格类型展示分析结果,您可以通过右侧的图表配置自定义设置图表类型和相关信息。若要进一步对存储桶访问日志进行可视化与告警的配置, 请前往 CLS 控制台







下载日志和导出分析结果

下载日志

1. 原始日志页面,单击右侧下载按钮,选择下载日志







2. 在弹出的窗口中,按需配置如下信息,确认无误后,单击导出







3. 进入导出记录页面,可以查看当前任务进度,支持删除下载操作。在等待过程中,您可以退出当前页面,从右侧下载按钮中单击导出记录,即可再次进入该页面。







导出分析结果

统计图表页面,单击右侧导出分析数据,将会下载分析结果至本地。







关闭日志检索

若您不希望继续使用某存储桶的日志检索功能,可单击关闭日志检索。

注意:

关闭存储桶的日志检索功能后,请前往 日志服务 CLS 日志主题控制台 检查存储桶所在地域下是否存在空日志主题。若存在,建议及时删除操作,避免产生额外计费。关于日志服务 CLS 的计费标准请参见日志服务 计费概述 文档。

日志字段说明

字段序号

名称

含义

示例

1

accountId

存储桶所有者 ID

100000000001

2

bucketName

存储桶名称

examplebucket-1250000000

3

deltaDataSize

请求对存储量的改变(Bytes)

808

4

eventName

事件名称

UploadPart

5

eventSource

用户访问的域名

examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com

6

eventTime

事件时间(请求结束时间,UTC 0时 时间戳)

2018-12-01T11:02:33Z

7

eventVersion

记录版本

1.0

8

logSourceType

日志源类型

USER(用户访问请求),CDN(CDN 回源请求)

9

objectSize

对象大小(Bytes)

808,如果您使用分块上传,objectSize 字段只会在完成上传的时候显示,各个分块上传期间该字段显示-

10

qcsRegion

请求地域

ap-beijing

11

range

请求中携带的 Range 头部的内容

bytes=0-1000

12

referer

请求的 HTTP referer

*.example.com或者111.111.111.1

13

remoteIp

来源 IP

192.168.0.1

14

reqBytesSent

请求字节数(Bytes)

83886080

15

reqMethod

请求方法

put

16

reqPath

请求的文件路径

/folder/text.txt

17

reqQcsSource

保留字段

保留字段,显示为-

18

requestId

请求 ID

NWQ1ZjY4MTBfMjZiMjU4NjRfOWI1N180NDBiYTY=

19

requestUri

请求 URI

"GET /fdgfdgsf%20/%E6%B5%AE%E7%82%B9%E6%95%B0 HTTP/1.1"

20

requester

访问者

主账号 ID:子账号 ID,如果是匿名访问则显示-

21

resBytesSent

返回字节数(Bytes)

197

22

resErrorCode

错误码

NoSuchKey

23

resErrorMsg

错误信息

The specified key does not exist.

24

resHttpCode

HTTP 返回码

404

25

resTotalTime

请求总耗时(毫秒,等于响应末字节的时间-请求首字节的时间)

4295

26

resTurnAroundTime

请求服务端耗时(毫秒,等于响应首字节的时间-请求末字节的时间)

4295

27

storageClass

存储类型

STANDARD,STANDARD_IA,ARCHIVE

28

targetStorageClass

目标存储类型,发起复制操作的请求会记录该字段

STANDARD,STANDARD_IA,ARCHIVE

29

userAgent

用户 UA

cos-go-sdk-v5.2.9

30

userSecretKeyId

用户访问 KeyId

AKID********************************

31

versionId

对象版本 ID

随机字符串

32

vpcId

VPC 请求 ID

"0"(非VPC)/"12345"(VPC,为不为"0"的 string)

常用示例

以下为您提供几个常用的示例,后续会补充更多案例,请关注产品动态。更多相关信息请参考 SQL 案例场景示例

案例一:查询访问量在TOP50的 IP

1. 选择语句模式,输入以下SQL语句。  * | select count(*) as PV, remoteIp as IP  group by IP order by PV desc limit 50

count(*) as PV:统计所有日志条数,即 PV。

group by IP:按 IP 分组,统计每个 IP 对应的 PV。

order by PV desc:按照 PV 降序排序,优先展示 PV 高的 IP。

limit 50:只返回查询结果中的前50条,即 PV 排名前50的 IP。

2. 选择时间范围(例如近30分钟),单击搜索查询,进入统计图表页面,即可查询仅30分钟内的统计分析结果,右侧支持切换图表类型。







说明:

若查询语句运行失败,建议您检查报错信息中指出的错误位置,错误原因可参考 CLS 检索分析报错

案例二:查询近90天请求的文件路径

1. 选择语句模式,输入以下SQL语句。* | select reqPath group by reqPath limit 1000000

2. 选择时间范围为近90天,单击搜索查询,进入统计图表页面,即可查询统计分析结果,右侧支持切换图表类型。







案例三:统计指定前缀的请求数、流量及存储量

例如,存储桶内有以下文件均产生日志请求,希望统计指定前缀为ap的对象(即文件路径为"/ap"、"/ap1"的对象)的请求数、流量及存储量。

注意:

对象请求数(resBytesSent):指日志请求中,对象的请求字节数(Bytes)。

对象流量(objectSize):指日志请求中,对象的总返回字节数。

对象存储量:指日志请求中,不包含“-”的对象大小(objectSize)之和。详情参见 日志字段说明

1. 选择交互模式,单击添加检索条件,指定 reqPath 包含 /ap* ,筛选出前缀为ap的对象请求日志,其中*为通配符。







2. 在输入框里输入以下语句。SELECT count(*) as "请求数",sum(resBytesSent) as "流量",SUM(CAST(objectSize AS INT)) AS "存储量" WHERE objectSize != '-'

3. 或者在步骤1选择语句模式,直接输入以下SQL语句。reqPath:"/ap*" | SELECT count(*) as "请求数",sum(resBytesSent) as "流量",SUM(CAST(objectSize AS INT)) AS "存储量" WHERE objectSize != '-'

4. 选择时间范围,单击搜索查询,进入统计图表页面,即可查询统计分析结果,右侧支持切换图表类型







案例四:某个文件访问不了,定位原因

1. 选择交互模式,单击添加检索条件。指定需要查找的文件名,并选择时间范围,单击搜索查询日志。







2. 单击左侧字段名称,打开快速分析,按 resHttpCode 字段进行统计分析。查看异常状态码的日志信息,例如403状态码、204状态码等。







3. 针对异常状态码,可以单击状态码,选择添加到本次检索筛选日志。在日志详情可查看其他字段的情况,建议重点关注 reqMethod 字段等。







如下图所示,该文件被执行了删除操作,导致对象访问失败。







热门文章
更多>