分析负载均衡7层访问日志

采集到SLB 7层负载均衡日志后,您可以在日志服务控制台查询分析日志、查看客户端PV全球分布请求方法PV趋势状态码PV趋势客户端PV热力图状态码分布等仪表盘。

背景信息

对于大部分云上架构而言,负载均衡是基础设施组件,对SLB持续的监控、探测、诊断和报告是一个强需求。阿里云SLB是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力。通过消除单点故障,为应用提供大规模、高可靠的并发Web访问支撑。

SLB访问日志功能当前支持基于HTTP/HTTPS的7层负载均衡,访问日志内容丰富,完整字段说明请参见日志字段详情。SLB典型指标如下所示:

  • PV:客户端发起HTTP、HTTPS请求的次数。

  • UV:对于相同客户端只计算一次,合计总体请求次数。

  • 请求成功率:状态码为2XX的请求次数占总PV的比例。

  • 请求报文流量:客户端请求报文长度总和。

  • 返回客户端流量:SLB返回给客户端的HTTP Body字节数总和。

  • 请求的热点分布:统计客户端地理位置,按照地理位置统计每个地域的PV情况。

前提条件

已采集到SLB 7层负载均衡日志。具体操作,请参见开通访问日志功能

查看仪表盘

  1. 登录日志服务控制台

  2. 在Project列表区域,单击目标Project。

    image

  3. 在左侧导航栏,选择仪表盘>仪表盘列表image

  4. 在仪表盘列表中,单击目标仪表盘,包括slb-user-log-slb_layer7_operation_center_cn和slb-user-log-slb_layer7_access_center_cn

    说明

    在仪表盘卡片的右上角,选择配置监控与告警 > 预览查询语句,查看该图表对应的查询和分析语句。

    • 业务概览

      通过过滤器筛选某指定SLB实例的PV、UV随时间的变化趋势。过滤器操作请参见添加过滤器客户端PV/UV趋势

    • 分析流量与延迟情况(slb_layer7_access_center_cn

      • 统计一定时间范围内请求报文的流量和返回客户端的流量。流量统计

      • 统计一定时间范围内请求的响应时间变化趋势和upstream响应时间变化趋势。响应时间

      • 统计一定时间范围内高延迟的请求。高延迟统计

    • 分析用户请求情况(slb_layer7_operation_center_cn

      • 统计一定时间范围内的请求方法、请求协议分布情况。PV分布统计

      • 统计一定时间范围内各种请求方法的PV趋势。请求方法PV趋势

      • 统计一定时间范围内服务运行情况。

        如果出现大量的500状态码则表示后端RealServer的应用程序发生内部错误。

        状态码

      • 统计一定时间范围内各种状态码的PV变化趋势。状态码PV趋势

    • 分析请求源

      • 统计客户端所属的网络运营商分布情况。运营商分布

      • 统计客户端所在的地理位置(国家、省份、城市)。top客户端

      • 查看用户代理信息。

        通过用户代理(http_user_agent)可得知哪些用户在访问网站或服务。例如搜索引擎会使用爬虫机器人扫描或下载网站资源,一般情况下低频爬虫访问可以帮助搜索引擎及时更新网站内容,有助于网站的推广和SEO。但如果高PV的请求都来自于爬虫,则可能影响服务性能及浪费机器资源。用户代理

    • 运营概览

      运营人员可基于SLB访问日志分析流量情况,进而辅助业务决策。例如通过分析Host和URI信息获知访客最关注的内容,为网站内容建设提供有力的参考。Top host

使用桑基图分析请求调度

客户端流量会先被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中。桑基图