网站用户流量分析—适用于电商网站、资讯网站、游戏主站等各类Web站点场景
1. 实验资源方式简介及开始实验
云起实验室实验资源方式介绍
云起实验室支持实验资源体验、领取免费试用额度、个人账户资源三种实验资源方式。
- 实验资源体验
- 资源归属于客户,仅供本次实验使用
- 实验结束后,实验资源及实验记录将被释放。
- 资源创建过程需要3~5分钟(视资源不同开通时间有所差异,ACK等资源开通时间较长)。完成实验资源的创建后,在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如子用户名称、子用户密码、AK ID、AK Secret、资源中的项目名称等)。
- 说明:实验环境一旦开始创建则进入计时阶段,建议学员先基本了解实验具体的步骤、目的,真正开始做实验时再进行创建。
- 领取免费试用额度
- 使用个人账号开通试用,平台仅提供手册参考。
- 所有实验操作将保留至您的账号,请谨慎操作。
- 在实验页面下方卡片会展示本实验支持的试用规格,可以选择你要试用的云产品资源进行开通。您在实验过程中,可以随时用右下角icon唤起试用卡片。阿里云支持试用的产品列表、权益及具体规则说明请参考开发者试用中心。
- 说明:试用云产品开通在您的个人账号下,并占用您的试用权益。如试用超出免费试用额度,可能会产生一定费用。
- 个人账户资源
- 使用您个人的云资源进行操作,资源归属于个人。
- 所有实验操作将保留至您的账号,请谨慎操作。
- 平台仅提供手册参考,不会对资源做任何操作。
- 说明:使用个人账户资源,在创建资源时,可能会产生一定的费用,请您及时关注相关云产品资源的计费概述。
准备开始实验
在实验开始前,请您选择其中一种实验资源,单击确认开启实验。
说明:每个实验所支持的实验资源方式都不相同,实验不一定能满足有三种实验资源方式,请根据实验的实际情况,进行选择。
2. 领取免费实验资源
实验前必看!
- 如果您的阿里云主账号符合开通免费试用的资格,建议您开通免费试用日志服务,日志服务免费试用时长为3个月,每个月100CU额度,超出免费额度的用量,计入按量付费,会产生后付费账单,具体计费详情,请参见计费概述。
- 如果您的阿里云账号只能领取部分免费试用产品,请您领取符合免费试用资格的产品,然后进入实验,不满足免费试用资格的产品将会使用个人账户资源进行创建,并会产生一定的费用,请您及时关注账户扣费。
- 为了避免资源浪费并造成账号扣费的情况,请严格按照本文提供的参数进行配置。在实验完成之后,请您及时删除或禁用压测任务。
- 在实验开始前,请您选择开通免费试用。
- 开通日志服务SLS免费试用。
2.1 在实验室页面下方,选择日志服务SLS,单击立即试用。
2.2 在日志服务SLS面板上,选中服务协议,单击立即试用。
- 开通云服务器ECS免费试用。
3.1 在实验室页面下方,选择云服务器ECS,单击立即试用。
3.2 在云服务器ECS面板上,参考如下说明配置参数,选中服务协议,单击立即试用,如弹出新的页面,您可先忽略。
参数 |
示例 |
操作系统 |
CentOS 7.9 64位。 本教程以CentOS 7.9 64位操作系统为例,如果您购买的ECS服务器使用了其他版本的操作系统,操作可能和本教程略有差异。 |
预装应用 |
本教程无需选择。 |
产品所在地域 |
华东1(杭州)。 |
到期释放设置 |
建议您选择现在设置,避免到期未释放产生扣费。 |
3.3 前往ECS控制台,在左侧导航栏,选择实例与镜像 > 实例。
3.4 在顶部菜单栏左上角处,选择和试用实例相同的地域(本教程示例华东1(杭州))。
3.5 设置该实例登录密码。找到您创建的试用实例,在其右侧操作列单击 > 实例属性 > 重置实例密码,按照界面提示设置ECS实例的登录密码。
实例创建完成大约3~5分钟后,才支持重置实例密码,如不可重置请耐心等待后重试。
3.6 单击试用实例的ID,选择安全组页签,单击安全组操作列的配置规则,在入方向添加需要放行的端口。本教程中,在安全组入方向放行80、443、22、3389端口。
- 领取完免费试用后,返回资源领取界面,单击我已开通,进入实验。
说明:如果您的阿里云账号只能领取部分免费试用产品,请您领取符合免费试用资格的产品,然后进入实验,不满足免费试用资格的产品将会使用个人账户资源进行创建,并会产生一定的费用,请您及时关注账户扣费。
3. 创建资源
- 开通日志服务SLS。
说明:
- 如果您选择的免费试用,并且在上一步骤中领取了日志服务SLS免费试用,请您跳过本步骤,直接进行下一小节操作。
- 如果您选择的免费试用,但是您的阿里云主账号没有资格领取日志服务SLS的免费试用,请您根据如下操作,开通日志服务SLS,进行按量付费,会产生后付费账单,具体计费详情,请参见计费概述。
- 如果您选择的个人资源,请您根据如下操作,开通日志服务SLS,进行按量付费,会产生后付费账单,具体计费详情,请参见计费概述。
1.1 登录日志服务控制台。
1.2 根据页面提示,开通日志服务。
日志服务的计费说明,请参见计费概述。
2. 创建云服务器ECS。
说明:
- 如果您选择的免费试用,并且在上一步骤中领取了云服务器ECS的免费试用,后台会自动为您创建一台云服务器ECS实例,请您跳过本步骤,直接进行下一小节操作。
- 如果您选择的免费试用,但是您的阿里云主账号没有资格领取云服务器ECS的免费试用,请您根据如下操作,创建云服务器ECS,并且会产生一定的费用,详情请参考计费概述。
- 如果您选择的个人资源,请您根据如下操作,创建云服务器ECS,并且会产生一定的费用,详情请参考计费概述。
2.1 前往云服务器ECS控制台,在概览页面的我的资源区域,单击创建实例。
2.2 在云服务器购买页面,参考如下说明配置参数,未提及的配置保持默认或按需修改,然后选中右侧的《云服务器ECS服务条款》,单击确认下单。
说明:本试用教程以下列的配置信息为例,实际操作时,建议根据您的实际业务体量和需求选择。
参数说明:
配置项 |
示例 |
说明 |
地域 |
地域:华东1(杭州) |
实例创建后,无法直接更改地域和可用区,请谨慎选择。 |
网络及可用区 |
选择合适的专有网络和交换机,如果您要创建专有网络和交换机,请单击下方的前往控制台创建。 |
推荐您使用专有网络,专有网络之间逻辑上彻底隔离,安全性更高,且支持弹性公网IP(EIP)、弹性网卡、IPv6等功能。 可用区是指在同一地域内,电力和网络互相独立的物理区域。同一可用区内实例之间的网络延时更小,其用户访问速度更快。 |
实例 |
规格族:共享标准型 s6 实例规格:ecs.s6-c1m1.small |
您可以前往ECS实例可购买地域,查看实例在各地域的可购情况。 |
镜像 |
公共镜像 CentOS 7.9 64位。 |
实例启动后,系统盘将完整复制镜像的操作系统和应用数据。 |
公网IP |
选中分配公网IPv4地址 |
选中后,自动分配一个公网IPv4地址。 |
带宽计费模式 |
按使用流量 |
按使用流量模式只需为所消耗的公网流量付费。详情请参见公网带宽计费。 |
带宽峰值 |
5 Mbps |
无。 |
安全组 |
选择新建安全组。 |
选择新建安全组。如果您已有开通80、443、22、3389端口的安全组,也可使用。 |
安全组类型 |
普通安全组 |
安全组按照类型划分为普通安全组和企业级安全组,两者均免费。在安全组容量、能否添加授权安全组的规则以及默认访问控制规则等方面有一定差异,适用于不同的使用场景。 |
开通IPv4端口 |
需要开通80、443、22、3389端口。 |
本实验需要开通80、443、22、3389端口。 |
登录凭证 |
自定义密码 |
本教程中选择自定义密码,并手动设置一个密码,用于远程连接并登录ECS实例。 |
登录密码 |
Ecs123456 |
当登录凭证选择自定义密码时,需要设置此选项并确认密码,在后续连接ECS实例时,您需要输入用户名root和此处设置的密码。 |
2.3 在创建成功对话框中,单击管理控制台。
2.4 在实例页面,等待状态变为运行中后,即可使用该云服务器ECS。
4. 安装Nginx
- 登录ECS。
在实验室页面右侧,单击 图标,切换至Web Terminal,安装Nginx运行所需要的插件。
如您选择的是公共资源,则会自动连接到实验室提供的云服务器ECS。
如您选择的是试用资源/个人资源,需输入ECS登录的用户名和密码进行登录。
- 执行如下命令,安装gcc。gcc是Linux下的编译器,它可以编译C、C++、Ada、Object C和Java等语言。
yum -y install gcc
2.1 执行如下命令,安装pcre。pcre是一个perl库,Nginx的HTTP模块使用pcre来解析正则表达式。
yum install -y pcre pcre-devel
2.2 执行如下命令,安装zlib。zlib是一个文件压缩和解压缩的库,Nginx使用zlib对HTTP数据包进行gzip压缩和解压。
yum install -y zlib zlib-devel
- 执行如下命令,下载Nginx安装包。
wget http://nginx.org/download/nginx-1.17.10.tar.gz
- 执行如下命令,解压Nginx安装包。
tar -zxvf nginx-1.17.10.tar.gz
- 执行如下命令,编译安装Nginx。
cd nginx-1.17.10 ./configure make && make install
- 执行如下命令,启动Nginx。
cd /usr/local/nginx/ sbin/nginx
- 切换到桌面操作界面。
测试Nginx启动。打开浏览器,访问http://<ECS公网地址>,出现如下界面表示安装启动成功。
说明:
如您选择的是公共资源,您可在云产品资源列表中查看ECS公网地址。
如您选择的是试用资源/个人资源,您可在云服务器ECS控制台的实例列表页面查看ECS公网地址。
5. 创建Logstore
本步骤将指导您如何在日志服务控制台中创建Logstore。
- 在页面右侧,单击图标,切换至远程桌面操作界面。
- 双击打开虚拟桌面的Chromium浏览器。
- RAM用户登录框中单击下一步,并复制粘贴页面左上角的子用户密码到用户密码输入框,单击登录。
- 复制下方地址,在Chromium浏览器打开新页签,粘贴并访问日志服务控制台。
https://sls.console.aliyun.com/
- 在日志服务控制台下方的Project列表中,选择Project资源所在地域,然后单击Project名称。
说明:您可以在云产品资源列表中查看Project资源所在地域和Project名称。
- 在日志存储页面左侧,单击日志库下的 图标。
- 在创建Logstore对话框中,Logstore名称输入为nginx-log,打开WebTracking开关,然后单击确定。
- 在创建成功对话框中,单击取消。
6. 创建Logstore
本步骤将指导您如何在日志服务控制台中创建Logstore。
- 前往日志服务控制台,在Project列表区域,单击创建Project。
- 在创建Project面板,根据如下说明配置Project,然后单击创建。
- 所属地域:默认选择即可。
- Project名称:shiyantest1。
- 在创建Project对话框中,单击关闭。
- 在Project列表区域,单击您创建的Project。
- 在日志存储页面左侧,单击日志库下的 图标。
说明:如果在后续操作中,出现了“没有权限"类型的弹窗,直接关闭弹窗即可,不影响实验进行。
- 在创建Logstore对话框中,Logstore名称输入为nginx-log,打开WebTracking开关,然后单击确定。
- 在创建成功对话框中,单击取消。
7. 采集Nginx日志
本步骤将指导您如何使用日志服务采集NGINX日志。
- 在日志存储页面左侧,选择日志库>nginx-log>数据接入>logtail配置,然后单击图标。
- 在快速接入面板中,单击NGINX-文本日志。
- 在创建机器组页面,单击ECS机器页签,选择实例选取方式为手动选择实例,并从实例列表中选择已创建的ECS实例,然后单击立即执行。
说明:
如您选择的是公共资源,您可在云产品资源列表中查看ECS实例。
如您选择的是试用资源/个人资源,您可在云服务器ECS控制台的实例列表页面查看ECS实例。
- 在实例列表页签,等待执行状态变为成功后,单击确认安装完毕。
- 在创建机器组页面,自定义名称输入为nginx,然后单击下一步。
- 在机器组配置页面,从源机器组中选择上一步创建好的机器组,单击将机器组移动到应用机器组,然后单击下一步。
- 在Logtail配置页面,配置如下参数,单击校验,校验成功后单击下一步。
参数说明:
- 配置名称:输入nginx。
- 日志路径:输入/usr/local/nginx/logs/**/access.log。
- NGINX日志配置:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$request_time $request_length ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent"';
- 日志样例:
192.168.1.2 - - [10/Jul/2020:15:51:09 +0800] "GET /ubuntu.iso HTTP/1.0" 0.000 129 404 168 "-" "Wget/1.11.4 Red Hat modified"
- 在查询分析配置页面,单击下一步。
- 在结束页面,单击查询日志。
- 在查询分析错误对话框中,单击确定。
- 在浏览器打开新页签,访问http://<ECS公网地址>,并刷新页面几次。
说明:
如您选择的是公共资源,您可在云产品资源列表中查看ECS公网地址。
如您选择的是试用资源/个人资源,您可在云服务器ECS控制台的实例列表页面查看ECS公网地址。
- 切换回日志服务页签,单击查询/分析,您即可看到采集的access.log日志。
8. 分析用户访问行为
本步骤指导您如何在仪表盘中创建今日UV、今日PV、来源IP分布、请求状态占比、访问前十IP、流入流出流量统计和PV预测等图表,进行分析用户访问行为。
- 在左侧导航栏中,单击图标。
- 在仪表盘区域,单击图标。
- 在添加仪表盘对话框中,仪表盘名称输入nginx,单击确认。
- 在仪表盘区域,单击nginx。
- 在nginx仪表盘页面,单击编辑。
- 创建今日UV图表。
6.1 在nginx仪表盘编辑页面,单击新建图表。
6.2 在nginx/编辑图表页面的属性配置区域,单击图标。
6.3 在nginx/编辑图表页面,配置如下参数,单击预览。
参数说明:
- 图表名称:输入今日UV。
- 显示标题:打开显示标题。
- 显示边框:打开显示边框。
- 显示背景:打开显示背景。
- 时间:选择1天。
- 查询分析:选择Nginx-log,输入如下查询语句。
select diff[1] as today, round((diff[3]-1.0)*100, 2) as growth FROM (SELECT compare(pv, 86400) as diff FROM (SELECT COUNT(DISTINCT remote_addr) as pv FROM log))
6.4 在nginx/编辑图表页面的属性配置区域,配置如下参数,单击确定。
参数说明:
- 图标类型:选择同步环比图。
- 显示值:选择today。
- 对比值:选择growth。
- 比较值单位:输入%。
- 数值描述:输入今日UV同比昨日。
返回如下页面,您可以在今日UV图表中看到今日UV同比昨日的数据。
- 今日PV图表。
7.1 在nginx仪表盘编辑页面,单击新建图表。
7.2 在nginx/编辑图表页面的属性配置区域,单击图标。
7.3 在nginx/编辑图表页面,配置如下参数,单击预览。
参数说明:
- 图表名称:输入今日PV。
- 显示标题:打开显示标题。
- 显示边框:打开显示边框。
- 显示背景:打开显示背景。
- 时间:选择1天。
- 查询分析:选择Nginx-log,输入如下查询语句。
select diff[1] as today, round((diff[3]-1.0)*100, 2) as growth FROM (SELECT compare(pv, 86400) as diff FROM (SELECT COUNT(1) as pv FROM log))
7.4 在nginx/编辑图表页面的属性配置区域,配置如下参数,单击确定。
参数说明:
- 图标类型:选择同步环比图。
- 显示值:选择today。
- 对比值:选择growth。
- 比较值单位:输入%。
- 数值描述:输入今日PV同比昨日。
返回如下页面,您可以在今日PV图表中看到今日PV同比昨日的数据。
- 来源IP分布。
8.1 在nginx仪表盘编辑页面,单击新建图表。
8.2 在nginx/编辑图表页面的属性配置区域,单击图标。
8.3 在nginx/编辑图表页面,配置如下参数,单击预览。
参数说明:
- 图表名称:输入来源IP分布。
- 显示标题:打开显示标题。
- 显示边框:打开显示边框。
- 显示背景:打开显示背景。
- 时间:选择1天。
- 查询分析:选择Nginx-log,输入如下查询语句。
select count(1) as c, ip_to_province(remote_addr) as address group by address limit 100
8.4 在nginx/编辑图表页面的属性配置区域,省份选择address,数列值选择c,单击确定。
返回如下页面,您可以在来源IP分布图表中看到来源IP分布省份的数据。
- 请求状态占比。
9.1 在nginx仪表盘编辑页面,单击新建图表。
9.2 在nginx/编辑图表页面的属性配置区域,单击图标。
9.3 在nginx/编辑图表页面,配置如下参数,单击预览。
参数说明:
- 图表名称:输入请求状态占比。
- 显示标题:打开显示标题。
- 显示边框:打开显示边框。
- 显示背景:打开显示背景。
- 时间:选择1天。
- 查询分析:选择Nginx-log,输入如下查询语句。
select count(1) as pv ,status group by status
9.4 在nginx/编辑图表页面的属性配置区域,分类选择status,数列值选择pv,单击确定。
返回如下页面,您可以在请求状态占比图表中看到各个请求状态的比例。
- 访问前十IP。
10.1 在nginx仪表盘编辑页面,单击新建图表。
10.2 在nginx/编辑图表页面的属性配置区域,单击图标。
10.3 在nginx/编辑图表页面,配置如下参数,单击预览。
参数说明:
- 图表名称:输入访问前十IP。
- 显示标题:打开显示标题。
- 显示边框:打开显示边框。
- 显示背景:打开显示背景。
- 时间:选择1天。
- 查询分析:选择Nginx-log,输入如下查询语句。
select count(1) as pv, remote_addr as client_ip group by client_ip order by pv desc limit 10
10.4 在nginx/编辑图表页面的属性配置区域,X轴选择client_ip,Y轴选择pv,单击确定。
返回如下页面,您可以在访问前十IP图表中看到访问NGINX次数前十名的IP。
- 流入流出流量统计。
11.1 在nginx仪表盘编辑页面,单击新建图表。
11.2 在nginx/编辑图表页面的属性配置区域,单击图标。
11.3 在nginx/编辑图表页面,配置如下参数,单击预览。
参数说明:
- 图表名称:输入流入流出流量统计。
- 显示标题:打开显示标题。
- 显示边框:打开显示边框。
- 显示背景:打开显示背景。
- 时间:选择1天。
- 查询分析:选择Nginx-log,输入如下查询语句。
select sum(body_bytes_sent) as net_out, sum(request_length) as net_in ,date_format(date_trunc('hour', __time__), '%m-%d %H:%i') as time group by date_format(date_trunc('hour', __time__), '%m-%d %H:%i') order by time limit 10000
11.4 在nginx/编辑图表页面的属性配置区域,X轴选择time,Y轴选择net_in和net_out,单击确定。
返回如下页面,您可以在流入流出流量统计图表中看到各个时间段的流入流出流量统计数据。
- PV预测。
12.1 在nginx仪表盘编辑页面,单击新建图表。
12.2 在nginx/编辑图表页面的属性配置区域,单击图标。
12.3 在nginx/编辑图表页面,配置如下参数,单击预览,然后单击确定。
参数说明:
- 图表名称:输入PV预测。
- 显示标题:打开显示标题。
- 显示边框:打开显示边框。
- 显示背景:打开显示背景。
- 时间:选择4小时天。
- 查询分析:选择Nginx-log,输入如下查询语句。
select ts_predicate_simple(stamp, value, 6, 1, 'sum') from (select __time__ - __time__ % 60 as stamp, COUNT(1) as value from log GROUP BY stamp order by stamp) LIMIT 1000
返回如下页面,您可以在PV预测图表中看到4个小时内的PV预测数据。
- 在nginx仪表盘编辑页面,单击保存。
- 在保存提示对话框中,单击确认。
9. 清理及后续
清理
一、日志服务SLS
SLS提供3个月100 CU的免费试用资源。完成教程后,请参考以下场景处理SLS资源:
- 如果无需继续使用日志服务,您可以登录日志服务控制台,进入目标Project,然后在左侧日志库列表中单击目标日志库,单击> 删除,删除日志库。最后在日志服务控制台首页,删除目标Project。
- 如果需继续使用日志服务,请务必至少在存储包试用到期1小时前为您的阿里云账号充值或购买新的存储包。欠费后如果在延停权益额度内,您的服务将不会受到停服影响。欠费后如果超出了延停权益额度,日志服务将自动停止。而您所占用的存储资源仍会继续扣费,因此欠费会累积。如果您在日志服务停服后7天内充值补足欠费,日志服务会自动启用。停服超过7天,将视为您主动放弃服务,日志服务Project将被回收,数据会被清理且不可恢复。请注意,数据清理之前仍会继续计费,若您确认不再使用日志服务,请务必删除日志服务上的资源。
二、云服务器ECS
ECS提供的个人版试用实例为按量付费实例。完成教程后,请参考以下规则处理实例:
- 如果无需继续使用实例,可以登录ECS控制台,找到目标实例,在操作列单击,搜索并单击释放设置,根据界面提示释放实例。
- 如果需要继续使用实例,请至少在试用到期1小时前为阿里云账号充值,确保账户金额不小于100.00元人民币。到期未续费的实例会因欠费而被自动停机,停机15天内实例将保留,15天后实例和数据都将被自动释放。
后续
在试用有效期期间,您还可以测试的其它业务场景继续使用日志服务。
10. 清理及后续
清理
一、日志服务SLS
完成教程后,请参考以下场景处理SLS资源:
- 如果无需继续使用日志服务,您可以登录日志服务控制台,进入目标Project,然后在左侧日志库列表中单击目标日志库,单击> 删除,删除日志库。最后在日志服务控制台首页,删除目标Project。
- 如果需继续使用日志服务,请及时关注账户扣费情况。欠费后如果在延停权益额度内,您的服务将不会受到停服影响。欠费后如果超出了延停权益额度,日志服务将自动停止。而您所占用的存储资源仍会继续扣费,因此欠费会累积。如果您在日志服务停服后7天内充值补足欠费,日志服务会自动启用。停服超过7天,将视为您主动放弃服务,日志服务Project将被回收,数据会被清理且不可恢复。请注意,数据清理之前仍会继续计费,若您确认不再使用日志服务,请务必删除日志服务上的资源。
二、云服务器ECS
完成教程后,请参考以下规则处理实例:
- 如果无需继续使用实例,可以登录ECS控制台,找到目标实例,在操作列单击,搜索并单击释放设置,根据界面提示释放实例。
- 如果需要继续使用实例,请随时关注账户扣费情况,确保账户金额不小于100.00元人民币。到期未续费的实例会因欠费而被自动停机,停机15天内实例将保留,15天后实例和数据都将被自动释放。
后续
在产品有效期期间,您还可以测试的其它业务场景继续使用日志服务。
实验地址:https://developer.aliyun.com/adc/scenario/cad002a5fb954ffcb82aba985e881ae6