开发者学堂课程【场景实践-基于阿里云 Quick BI 对 MOOC 网站日志分析:网站常见的分析指标介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/524/detail/7074
网站常见的分析指标介绍
内容介绍:
一、一条网站用户访问日志
二、网站的流量分析
三、网站的来源分析
四、网站的访问分析
五、网站的访客分析
上节介绍了 Nginx 和 Tomcat 访问日志配置方式。以下截图是 Nginx 在默认日志规则下实际的日志输出文件:
一、一条网站用户访问日志
先来查看单条日志:
112.10.94.234 - - [22/Aug/2017:14:01:26 +0800] "POST /item/detail.mooc HTTP/1.1” 200 2582 "http://www.chinamoocs.com/study/initplay/540.mooc""Mozilla/5.0(Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.1.2 Safari/603.3.8"
//以上是一条nginx的默认格式的用户访问日志,我们可以轻易的获取︰用户的IP,访问时间(请求时间),请求链接(用户实际请求地址),请求状态(http状态,此处为200),请求字节数,来源链接(访问来源),用户操作系统(用户客户端信息此处用户使用mac,操作系统为OS X 10_12_6),浏览器内核及版本,浏览器名称,浏览器版本(此处为Safari,版本为603.3.8)等等信息。
确认每个属性的含义后需要提取这些属性并进行转换。
l 用户的IP:城市,网络运营商
(每一个IP都固定了属于的城市与网络运营商。将IP通过一定方法转换为所在的城市与网络运营商以知道用户所在的城市、使用的网络类型)
l 访问时间:提取具体的访问小时数
(用户的访问时间,由于需要做一天访问的趋势统计,所以需要提取当前小时数,对时间字符串进行转换操作提取访问的小时数)
l 请求链接:提取有效的链接
(请求开始会显示请求类型为 GET 或 POST,但是并不需要,并且不需要请求协议,此处为HTTP,也不需要协议版本。只需有效的链接,为了便于统计还需要去掉真实请求链接后的无关参数即上述?后的参数,只保留mooc前的内容)
l 来源链接:分类(自身,搜索引擎等)
(chinamoocs为我们本身的网站来源,在访问detail链接时上一步操作实际停留在该请求上。需要对来源请求进行分类:是网站本身链接还是其它网站来源,对于其它来源进行一定分类判断是否是搜索引擎的来源例如谷歌百度等)
l 客户端信息:提取用户操作系统,浏览器名称等等
(提取有用信息,当前操作系统为 OS,同时提取浏览器名称,此处为 Safari)
每一条日志都以简单空格来分隔,但是并不能简单以空格分隔,因为很多属性中含有空格,所以考虑使用正则表达式提取每个属性,之后会讲解。
二、网站的流量分析
IP(独立IP):即独立IP数。00:00-24:00内相同IP地址只被计算一次。
PV(访问量)∶即Page View,即页面浏览量,用户每次刷新即被计算一次。通过访问量得知网站在一定时间内处理的请求数。
UV(独立访客)︰即 Unique Visitor,访问您网站的一个客户端为一个访客(一般在Cookie中分配唯一编号)。用户在访问网站时会分配唯一编号,通过唯一编号得知用户是否为独立访客,并且统计唯一编号的数量,从而得知UV数。但在此处访问日志无法收集到 Cookie 唯一编号,采取另一种方式IP+用户客户端信息作为独立访客的依据。
三个指标独立存在没有意义,但是合并在一起进行关联分析。例如PV与UV接近时可能认为用户在访问网站时点击次数不多,网站内容不吸引用户;当IP>UV时,可以认为使用家庭宽带的用户比较多,因为家庭宽带的IP不固定,会发生变故;当UV>IP时,可能非家庭宽带,公司等团体机构IP为固定,出口IP相同。
访问趋势图︰即一段时间中用户在各个时间段用户访问情况,也可以按PV,UV ,IP指标细分。
访问趋势图可以直观描绘整个网站在一段时间内所有用户的并发情况。图中可以明显看出上午9:00到11:00间是用户访问的小高峰,下午4:00到6:00间又为一个新高峰。通过直观线图可以准确了解服务器负载情况。了解服务器在一天内按时间的负载情况后,可以调整网站的程序,例如需要有统计任务定时执行,那么在访问高峰期,服务器负载高,应该尽量避免高峰期执行CPU占用比较高的计算任务。应该选择用户访问不多的时间段中执行定时任务。
三、网站的来源分析
访问来源分析∶即用户从各个来源网站进入本站的占比。
搜索引擎来源︰即来源中的各个搜索引擎的的占比。
图一分为直接访问、其它链接、搜索引擎,通过这种占比方式,可以看到搜索引擎来源并不高。
图二为搜索引擎来源,将搜索引擎来源单独提取进行更细致分类。图上可以看出网站搜索引擎来源中的三个主要搜索引擎:百度、谷歌、360.通过网站的来源分析可以得知搜索引擎的优化是否起效。
四、网站的访问分析
访问链接TopN:即用户访问最多的链接。通过访问链接得知用户经常访问网站中的哪个链接,了解后如果想要增加网站一些商品的销量,可以在这些链接中植入广告等提升用户点击概率。
恶意攻击IP∶搜集疑似恶意攻击本网站的IP,用于IP黑名单。大部分来源于竞争关系的同行,通过恶意攻击方式使网站不稳定,降低正常访问网站的用户的体验,最终造成网站的用户流失。对于这种不利情况需要搜集疑似恶意攻击本站的IP并将其列于黑名单。禁止这些恶意攻击的IP对网站进行访问。
判定是否为恶意攻击的IP依据为:大量的404状态的HTTP请求
五、网站的访客分析
访客地域分布∶即访客所处的地址位置。通过访客的地域分布可以得知网站的用户所处的地理位置,得知地理位置后可以对网站进行针对性优化。例如网站的访问用户集中在华东地区。(处在不同地域的网络存在延迟)不能将华东用户的地区访问处于新疆地区的服务器。应该将服务器部署在离大量用户较近的地方,提升用户体验。
访客浏览器∶即访客采用什么样的浏览访问网站,如Chrome,Firefox等。了解了这些类型的浏览器后可以对网站进行优化:着重测试使用频率较高的浏览器对于我们网站的样式加载是否正常,是否存在样式错乱等问题,针对性修复样式错乱加载不正常等问题后从而增加不同浏览器访问用户的体验。
网站的访客分析
访客操作系统︰即访客所使用的操作系统,如windows ,OS X,安卓,IOS等。
访客网络运营商︰即访客所使用的网络运营商,如电信,联通,移动等等。(网站的访问用户使用什么网络访问网站)。不同的网络运营商访问存在很大延迟。所以需要针对不同网络运营商的用户优化服务器。例如电信网站访问用户占多数,可以考虑适当增加电信服务器配额。如果使用阿里云服务器,已经在内部实现了多网合一。不需要考虑该问题。
在进行网站日志的各种分析后,以此对网站进行确实的优化,先是网站程序优化,例如调整网站前端程序的适应性,使之可以更好的匹配网站在各个浏览器下的一些表现以增加用户的访问体验。接着是网站服务器优化,例如可以调整网站的服务器的地理位置,使网站用户访问延迟降低从而增加体验。最后是搜索引擎推广,对于用户搜索引擎来源过低情况,可以针对搜索引擎做网站优化,也可以使用推广增加网站的访问量从而提升网站的商品销量。