负载均衡 配置访问日志

负载均衡支持配置七层(HTTP/HTTPS)访问日志(Access Log),访问日志可以帮助你了解客户端请求、辅助排查问题、分析梳理用户行为等。当前访问日志支持存储到 CLS 中,支持分钟粒度的日志上报,在线多规则检索。

相关产品
负载均衡 产品页,含版本规格、价格与购买入口。

负载均衡的访问日志主要用于故障排查,帮助业务快速定位问题。访问日志功能包括日志上报、日志存储和查询:

·日志上报,提供尽力而为服务(Best-Effort Service),优先保障业务转发,再保障日志上报。

·日志存储和查询,按当前使用的存储服务来提供服务保障 SLA。

注意:说明:

一、步骤1:开启访问日志存入 CLS

1. 登录 负载均衡控制台,单击左侧导航栏的实例管理。

2. 在实例管理页面,单击目标负载均衡 ID。

3. 在基本信息页面的访问日志(七层)模块,单击开启。

4. 在弹出的开启访问日志(七层)对话框中,开启访问日志,并选择存储访问日志的日志集和日志主题,单击确定。若你没有创建日志集或日志主题,请 新建相关资源 后,再选取具体的存储位置。

注意:说明:

注意:建议选择 clb_logset 日志集下带 CLB 标识的日志主题。带 CLB 标识的日志主题和普通日志主题的差异在于:

5. 配置完成后单击日志集或日志主题即可跳转到 CLS 控制台的检索分析页面。

6. (可选)若想关闭访问日志,可单击修改配置,在弹出的修改访问日志(七层)对话框中进行关闭并单击确定即可。

二、步骤2:配置日志主题的索引

注意:说明:

注意:为单实例配置的访问日志的日志主题必须配置索引,否则检索不到日志。

建议配置的索引如下:

键值索引 字段类型 分词符
server_addr text 无需配置分词符
server_name text 无需配置分词符
http_host text 无需配置分词符
status long –
vip_vpcid long –

具体操作如下:

1. 登录 日志服务控制台,在左侧导航栏单击日志主题。

2. 在日志主题页面,单击目标日志主题 ID。

3. 在日志主题详情页,单击索引配置页签,单击右上角的编辑,即可添加索引,添加完成后,单击页面底部确定。索引字段配置说明请参见 开启索引。

4. 索引配置完成后结果如下所示。

三、步骤3:查看访问日志

1. 登录 日志服务控制台。

2. 在左侧导航栏中,单击检索分析。

3. 在顶部选择需要查询的日志主题。

4. 选择检索分析语句输入模式,日志服务提供两种模式来输入检索分析语句。详情可参见 语法规则。

注意:说明:

注意:__SOURCE__字段记录的是 CLB 集群的转发节点机器 IP。

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

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

5. 输入检索分析语句后,在右侧选择时间范围,然后单击搜索按钮,执行检索分析。

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

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

四、步骤1:创建日志集和日志主题

若你需要配置访问日志到日志服务 CLS 中,则需先创建日志集和日志主题。

若已有日志集和日志主题,则可直接跳转至 步骤2 开始操作。

1. 登录 负载均衡控制台,单击左侧导航栏的日志管理 > 访问日志列表。

2. 在访问日志页面左上角选择所属地域,在日志集信息区域,单击创建日志集。

3. 在弹出的创建日志集对话框中,单击保存。

注意:说明:

注意:每个地域仅支持创建一个日志集,日志集名称为“clb_logset”。

4. 在访问日志页面的日志主题区域,单击新建日志主题。

5. 在弹出的新增日志主题对话框,选择存储类型和日志保存时间后,选择左侧的负载均衡实例添加至右侧列表中,单击保存。

注意:说明:

6. (可选)若需关闭访问日志,在日志主题列表的右侧操作列中,单击停止,停止投递日志即可。

五、步骤2:查看访问日志

1. 登录 日志服务控制台。

2. 在左侧导航栏中,单击检索分析。

3. 在顶部选择需要查询的日志主题。

4. 选择检索分析语句输入模式,日志服务提供两种模式来输入检索分析语句。详情可参见 语法规则。

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

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

5. 输入检索分析语句后,在右侧选择时间范围,然后单击搜索按钮,执行检索分析。

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

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

六、字段类型

目前日志服务支持如下三种字段类型:

名称 类型描述
text 文本类型
long 整型数值类型(Int 64)
double 浮点数数值类型(64 bit)

七、日志变量说明

变量名 说明 字段类型
stgw_request_id 请求 ID。 text
time_local 访问的时间与时区,例如,“01/Jul/2019:11:11:00 +0800”,最后的“+0800”表示所处时区为 UTC 之后的8小时,即为北京时间。 text
protocol_type 协议类型(HTTP/HTTPS/SPDY/HTTP2/WS/WSS)。 text
lb_id CLB 的实例 ID,CLB 实例的唯一标识。 text
server_addr CLB 的 VIP,仅非域名化实例支持,域名化实例该取值为空。 text
server_port CLB 的 VPort,即监听端口。 long
server_name 规则的 server_name,CLB 的监听器中配置的域名。 text
remote_addr 客户端 IP。 text
remote_port 客户端端口。 long
status CLB 返回给客户端的状态码。 long
upstream_addr RS 地址。 text
upstream_status RS 返回给 CLB 的状态码。 text
proxy_host stream ID。 text
request 请求行。 text
request_length 从客户端收到的请求字节数。 long
bytes_sent 发送到客户端的字节数。 long
http_host 请求域名,即 HTTP 头部中的 Host。 text
http_user_agent HTTP 协议头的 user_agent 字段。 text
http_referer HTTP 请求来源。 text
http_x_forwarded_for HTTP 请求中 x-forwarded-for header 的内容。 text
request_time 请求处理时间:从收到客户端的第一个字节开始,直到给客户端发送的最后一个字节为止,包括客户端请求到 CLB、CLB 转发请求到 RS、RS 响应数据到 CLB、CLB 转发数据到客户端的总时间。单位:秒。 double
upstream_response_time 整个后端请求所花费时间:从开始 CONNECT RS 到从 RS 接收完应答的时间。单位:秒。 double
upstream_connect_time 和 RS 建立 TCP 连接所花费时间:从开始 CONNECT RS 到开始发送 HTTP 请求的时间。单位:秒。 double
upstream_header_time 从 RS 接收完 HTTP 头部所花费时间:从开始 CONNECT RS 到从 RS 接收完 HTTP 应答头部的时间。单位:秒。 double
tcpinfo_rtt TCP 连接的 RTT。 单位:微秒。 long
connection 连接 ID。 long
connection_requests 连接上的请求个数。 long
ssl_handshake_time 记录 SSL 握手各阶段耗时,格式:x:x:x:x:x:x:x。其中,冒号分隔的字符串,单位是 ms,每个阶段耗时若小于1ms 则显示为0。第1个字段表示是否 SSL 会话复用。第2个字段表示完整的握手时间。3~7表示 SSL 各阶段耗时。第3个字段表示 CLB 从收到 client hello 到发送 server hello done 的时间。第4个字段表示 CLB 从发送 server 证书开始到发送 server 证书完成的时间。第5个字段表示 CLB 从计算签名到发送 server key exchange 完成的时间。第6个字段表示 CLB 从收到 client key exchange 开始到收完 client key exchange 的时间。第7个字段表示 CLB 从收到 client key exchange 到发送 server finished 的时间。 text
ssl_cipher SSL 加密套件。 text
ssl_protocol SSL 协议版本。 text
vip_vpcid 负载均衡实例所属的私有网络 ID,公网 CLB 的取值为-1。 long
request_method 请求方式,支持 POST 和 GET 请求。 text
uri 资源标识符。 text
server_protocol CLB 的协议。 text
vsvc_id 规则 ID 对应底层编号,协助排障定位。 text

八、默认支持检索的日志变量

带“CLB”标识的日志集默认支持检索的字段如下所示:

索引字段 说明 字段类型
time_local 访问的时间与时区,例如,“01/Jul/2019:11:11:00 +0800”,最后的“+0800”表示所处时区为 UTC 之后的8小时,即为北京时间。 text
protocol_type 协议类型(HTTP/HTTPS/SPDY/HTTP2/WS/WSS)。 text
server_addr CLB 的 VIP。 text
server_name 规则的 server_name,CLB 的监听器中配置的域名。 text
remote_addr 客户端 IP。 text
status CLB 返回给客户端的状态码。 long
upstream_addr RS 地址。 text
upstream_status RS 返回给 CLB 的状态码。 text
request_length 从客户端收到的请求字节数。 long
bytes_sent 发送到客户端的字节数。 long
http_host 请求域名,即 HTTP 头部中的 Host。 text
request_time 请求处理时间:从收到客户端的第一个字节开始,直到给客户端发送的最后一个字节为止,包括客户端请求到 CLB、CLB 转发请求到 RS、RS 响应数据到 CLB、CLB 转发数据到客户端的总时间。单位:秒。 double
upstream_response_time 整个后端请求所花费时间:从开始 CONNECT RS 到从 RS 接收完应答的时间。单位:秒。 double
vip_vpcid 负载均衡实例所属的私有网络 ID,公网 CLB 的取值为-1。 long
lb_id CLB 的实例 ID,CLB 实例的唯一标识。 text
赞 (0)
上一篇 4天前
下一篇 4天前