作者:v神
导语:云原生日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志数据解决平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。
CLB访问日志大洞察
负载均衡CLB作为千亿QPS的网关产品,精细化运营十分重要,而CLB访问日志则是其中的利器。
通过CLB访问日志,我们可以挖掘海量的数据价值,不仅可以从访问日志中监控客户端请求、辅助排查问题、也可以分析梳理用户行为,为运营角色提供数据支持。
CLB:负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台云服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
本期我们主要介绍如何使用CLS分析CLB访问日志。
运维监控
场景
小秦是负责某互联网业务广告平台的运维同学,最近经常碰到广告金主们的挑战:用户在你们平台点击我们的广告反映很慢是怎么回事。很多时候广告合作方对时效性和稳定性要求比较高,小秦老板要求如果出现服务异常,比如1min内告警,5min内解决。
小秦一筹莫展,仔细思考了,需要利用CLB日志达到以下能力:
- 对客户端的访问时延,异常请求监控,高于一定阈值告警;
- 出现告警,有额外信息帮助判断故障原因:
- 延时高于阈值的请求都是访问哪些网站,哪些LB实例和后端RS服务器;
- LB实例和后端RS服务器的延时情况统计。
CLS日志解决方案
基于CLS的1min实时告警及多维分析能力,用户可以快速针对CLB访问日志进行运维监控,快速定位异常问题修复故障。
1. 首先,开启CLB访问日志投递CLS。
在负载均衡"实例管理"页面中,点击负载均衡ID,即可开启“日志投递至CLS”。如下图所示,详细操作步骤参考:配置访问日志。
2. 配置客户端访问延时和异常请求监控的告警策略。
客户端访问时延统计:
代码语言:txt复制* | select time_series(__TIMESTAMP__, '1m', '%Y-%m-%d %H:%i:%s', '0') as time, round(avg(request_time)*1000,2) as "平均访问延时" group by time order by time limit 1000
异常请求统计:
代码语言:txt复制status:>200 | select time_series(__TIMESTAMP__, '1m', '%Y-%m-%d %H:%i:%s', '0') as time, status, count(1) group by time,status order by time limit 1000
- 配置告警策略,检测每分钟平均延时,高于阈值告警。
- 告警策略中配置多维分析,出现告警时,附带额外信息:
- LB实例和后端RS服务器的延时情况统计;
- 延时高于阈值的请求都是访问哪些网站,哪些LB实例和后端RS服务器。
- 配置通知渠道,可支持如下渠道:
- 邮件
- 短信
- 微信
- 企业微信
- 电话
- 自定义接口回调
3. 接收告警,快速定位。
一旦触发告警,微信、企业微信、短信、电话等多端接收告警信息及详情内容:
告警详情中,看到受影响的RS实例,LB实例等信息。
由告警信息得知,LB实例平均延时较高,受影响的LB实例主要是9.*****.1
。运维小秦同学定位出异常LB实例并修复,整体耗时仅用1分钟。
运营统计
其实CLB访问日志不仅能成为运维同学的得力助手,同时也是运营同学的一把“利器”。
场景
某科技内容APP希望下个月策划一次线下沙龙会,一方面增加存量用户的粘性,另一方面借此机会宣传产品,拉动新用户。准备时间较短,经费有限,如何才能利用有限的资源,尽可能的完成KPI目标。运营同学小婷苦苦思索,列了下大概需要获知的信息:
- 线下沙龙会在哪里举办:需要了解访问客户地理来源,了解重点客户群体地理位置;
- 沙龙主题是什么:统计热点网站TOP排序,了解用户关注较多的内容板块是哪些;
- 当前用户主要用哪些客户端访问:针对当前客户端分布,重点设计落地页;
- 宣传落地页投放在哪些渠道:统计当前网站请求来源,寻找流量高的导流入口重点投放广告。
我们来看看如何用CLB访问日志轻松解决运营同学的燃眉之急吧~
1.了解访问客户地理来源:利用CLS提供IP函数,将客户端ip转换为对应的省份或国家。
中国分布:
代码语言:txt复制* | select count(1) as c, ip_to_province(remote_addr) as address group by address limit 100
全球分布:
代码语言:txt复制* | select count(1) as c, ip_to_country(remote_addr) as address group by address limit 100
2. 统计热点网站TOP排序:http_host记录了访问的请求域名,通过统计请求域名的pv,uv,可以统计top host排序。
代码语言:txt复制* | select http_host, count(*) as pv, count(distinct(remote_addr)) as uv group by http_host order by pv desc limit 100
3. 统计客户端分布。
代码语言:txt复制* | select http_user_agent, count(*) group by http_user_agent
4. 统计当前网站请求来源:http_referer字段记录了网站的请求都来自于哪里。
代码语言:txt复制* | select http_referer, count(*) as count group by http_referer order by count desc limit 100
CLB访问日志数据挖掘
CLB负载均衡的访问日志还能挖掘很多价值,比如pv,uv趋势统计,客户端报文流量统计,状态码分布,P99,P95访问延时等。为了帮助用户快速分析CLB访问日志,CLS和CLB联合打造了开箱即用的可视化分析方案,用户只需开启CLB访问日志投递CLS,即可马上享用!
操作步骤
- 登陆控制台,开启CLB访问日志投递CLS,详见文档负载均衡访问日志配置。
- 打开可视化仪表盘。
以上就是本期CLB访问日志玩法分享,如果您有更多有意思的日志实践,
欢迎扫码关注我们,进行投稿分享!
往期文章:
【技术种草】今年的11.11活动要把腾讯云“搞垮”了!!!
CLB日志核心的玩法你Get到了吗?
【日志服务CLS】腾讯云日志服务CLS接入内容分发网络CDN
【腾讯云日志服务CLS】serverless应用中的CLS服务详解
【日志服务CLS】Nginx 访问日志检索、分析示例