本文档基于日志服务的可视化和实时查询分析能力,为您介绍负载均衡(SLB)7层访问日志查询分析的典型案例。
前提条件
已采集到SLB 7层负载均衡日志,详情请参见开通访问日志功能。
背景信息
对于大部分云上架构而言,负载均衡是基础设施组件,对SLB持续的监控、探测、诊断和报告是一个强需求。阿里云SLB是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力。通过消除单点故障,为应用提供大规模、高可靠的并发Web访问支撑。
SLB访问日志功能当前支持基于HTTP/HTTPS的7层负载均衡,访问日志内容丰富,完整字段说明请参见日志字段详情。SLB典型指标如下所示:
- PV:客户端发起HTTP、HTTPS请求的次数。
- UV:对于相同客户端只计算一次,合计总体请求次数。
- 请求成功率:状态码为2XX的请求次数占总PV的比例。
- 请求报文流量:客户端请求报文长度总和。
- 返回客户端流量:SLB返回给客户端的HTTP Body字节数总和。
- 请求的热点分布:统计客户端地理位置,按照地理位置统计每个地域的PV情况。
常用分析
请求调度分析
客户端流量会先被SLB处理,分发到其中一台RealServer中进行实际的业务逻辑处理。SLB可自动检测到不健康的机器并重新分配流量到其它正常服务的RealServer上,等异常机器恢复后再重新分配流量。

为SLB实例添加一个监听,例如服务器(192.168.0.0)同时兼有跳板机职能,其性能是其它三台服务器的4倍,为该服务器设置监听权重为100,其余服务器监听权重为20。执行如下查询分析语句分析请求流量分布情况。
* | select COALESCE(client_ip, vip_addr, upstream_addr) as source, COALESCE(upstream_addr, vip_addr, client_ip) as dest, sum(request_length) as inflow group by grouping sets( (client_ip, vip_addr), (vip_addr, upstream_addr))
桑基图展示每台RealServer的负载情况,多个客户端向SLB发起请求,请求报文流量基本遵循20:20:20:100比例转发到后端RealServer中。
