首页 网站建设正文

网站分析工具的数据收集方法

kumb 网站建设 2020-07-28 21:34:39 267 0

网站分析主要是基于网站分析工具获取的各种数据来进行分析,因此了解网站分析工具的特征与能够获取到的数据种类是非常必要的。虽然统称为网站分析工具,但是收集数据的方法却是多种多样的。因此,网站分析的第一步就是要了解使用的网站分析工具是怎样收集数据的。明确了这一点,就能更深入地理解网站分析工具中显示的数字是如何统计出来的。

网站分析工具的数据收集方法可以分为“Apache 日志”“网络信标”“Apache 模块”“包嗅探”这 4 种方法。这些方法都有各自的优缺点。一个工具也可以使用多种数据收集方法。

2.1.1 Apache 日志方法

Apache 日志方法是基于当前最普及的 Web 服务器软件 Apache HTTP Server 生成的访问日志来统计、显示数据的方法。这是最早出现的数据收集方法之一,在 10 年前很常用,而且直到现在也有着广泛的应用。

使用 Apache 日志方法收集数据

以下 2 类信息,使用后述的其他方法无法获取,但使用 Apache 日志方法就可以得到,可以说是 Apache 日志方法的特点所在。第 1 类是页面以外的请求信息。Apache 日志方法可以获取图像(gif、jpg 等)或者视频(fla、wmv 等)的请求信息。只不过网站分析很少会用到这些信息。第 2 类是爬虫的请求信息 1。Apache 日志方法会将爬虫爬取页面也作为 1 次访问记录在访问日志中。因为事实上并不是用户在浏览页面,所以在进行网站分析时这些信息反而会成为干扰 2。

1爬虫是指搜索引擎等为了获取网站的信息而运行的程序。爬虫会遍历全世界的网站,基于抓取到的信息生成搜索结果。

2有时记录这些信息是为了查看爬虫是否来过网站。

Apache 日志方法的优缺点

Apache 日志方法具有以下优点。

  • 获取数据时不需要对相应页面做任何处理,可以直接开始统计
  • 能够获取搜索引擎的爬虫信息
  • 如果保存了以前的日志文件,还可以统计以前的访问情况

另一方面,Apache 日志方法也有以下缺点。

  • 分析时需要读取日志文件,因此在访问数较多时读取文件会比较费时(有可能会花几个小时到几天的时间)
  • 因为每个 Web 服务器都会生成日志文件,如果有多个服务器,统计起来会比较麻烦
  • 因为包含页面以外的请求信息,在进行网站分析时需要去掉这些信息(有工具可以在读取时自动过滤这些信息)
  • 不能正确地界定信息是否是属于同一个用户(准确度较低)
  • 在无法获取访问日志的情况下(租用的服务器等)不能使用

从上述优缺点可以看到,Apche 日志方法不适合用于日常分析。因此,建议一般情况下使用那些采用其他数据获取方法的网站分析工具,如果想知道爬虫的访问信息、图像等的请求数,或者想要重新统计以前的数据时,再使用这种方法。

访问日志的描述方法

生成的访问日志保存在服务器 logs 目录下的 access.log 文件中(初始设置)。每 1 行记录了 1 次访问的信息。获取的条目可以按照 CustomLog 指令(描述方法)的格式来记录。

下面是通常使用的、设定为 Combined Log Format 的访问日志。这些是日志中 1 行的数据(这里由于纸张面积有限进行了换行)。

127.0.0.1 frank [10/Oct/2000:13:55:36 -0700]

"GET /apache_pb.gif HTTP/1.0"

200 2326 "http://www.example.com/start.html"

"Mozilla/4.08 [en] (Win98; I ;Nav)"

访问日志的内容



  

描述  

  

说明  

  

127.0.0.1  

  

IP 地址  

  

frank  

  

通过HTTP认证的登录ID。如果没有通过HTTP认证是无法获取数据的,因此通常不用于面向外部的网站  

  

[10/Oct/2000:13:55:36 -0700]  

  

访问时间。[-0700] 表示时区。日本的时区是[+0900]  

  

"GET /apache_pb.gif HTTP/1.0"  

  

请求信息。左例的意思是使用HTTP/1.0协议、以GET方式获取图像apache_pb.gif  

  

200  

  

状态码。请求成功时返回200,重定向时返回300,客户端错误时返回400,服务器端错误时返回 500  

  

2326  

  

发送给客户端的消息大小(以byte为单位,消息头不算在内)。连字符[-] 表示没有发送内容  

  

"http://www.example.com/start.html"  

  

引荐来源。从左例中可以看出是该URL中是包含了gif图像,还是点击了该URL的页面中指向该图像的链接  

  

"Mozilla/4.08 [en] (Win98; I ;Nav)"  

  

用户代理(浏览器与OS的信息)  

Tips  分析 Apache 的访问日志时,使用 RTmetrics、LogChaser、SiteTracker、WebTrends 等工具可以很方便地将访问日志的内容简单易懂地图示出来。

2.1.2 网络信标方法

网络信标方法是指事先在页面中嵌入测量用的图像与标记(JavaScript),当用户访问该页面时,向专门的统计服务器发送图像请求来获取访问信息的方法3。对于没有嵌入测量用标记的页面无法获取访问信息。

3用于统计的图像称为网络信标。

使用网络信标方法收集数据

网络信标方法只需要在页面内嵌入测量用的标记就可以使用,而且获取的数据种类比其他方法多,因此很多网站分析工具都采用这种方法。本书中举例说明的 Google Analytics,以及 SiteCatalyst(PC)、Visionalist(PC)、econda、Sibulla、ComfyAnalytics 等网站分析工具都采用了网络信标方法。如果还没有引入网站分析工具,建议首先使用采用网络信标方法收集数据的网站分析工具。

另外,这种方法主要用于 PC 网站或优化后的智能手机访问网站。几乎不用于 JavaScript 执行受限的手机端网站。

网络信标方法的标记示例(Google Analytics)

<script type="text/javascript">



  var _gaq = _gaq || [];

  _gaq.push(['_setAccount', 'UA-XXXXXX-X']);

  _gaq.push(['_trackPageview']);



(function() {

  var  ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;

  ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';

  var  s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);

})();



</script>

网络信标方法的优缺点

网络信标方法有以下的优点。

  • 只需要在 HTML 页面中嵌入标记,使用的难度低
  • 使用其他的服务器或者域对测量都没有影响
  • 外部服务器或共享服务器都可以使用此方法
  • 能比 Apache 日志方法更快地获得结果

另一方面,网络信标方法也有以下的缺点。

  • 在不支持 JavaScript 或 Cookie 的环境下能够测量的项目很有限
  • 无法获取爬虫的信息
  • 因为读取不到标记就无法测量,所以如果用户在读取到标记之前就离开页面也会无法测量

访问日志的描述方法

让我们来查看一下使用网络信标方法发送来的图像请求的内容。下面是一个由 Google Analytics 获取的数据示例。

15:31:13.500[629ms][total 629ms] Status: 200[OK]

GET http://www.Google Analytics.com/__utm.gif?

utmwv=4.6.5&utmn=659033600&utmhn=d.hatena.ne.jp&

utmcs=EUC-JP&utmsr=1920x1200&utmsc=32-bit&utmul=ja&

utmje=1&utmfl=10.0 r45&utmdt=网站分析实践&

utmhid=777861380&utmr=http://www.google.co.jp/ig&

utmp=/ryuka01/&utmac=UA-176486-7&

utmcc=__utma=12134753.782672868.1234064311.1267942132.1267944193.633;+__utmz=12134753.1267944193.633.617.utmcsr=google.co.jp|utmccn=(referral)|utmcmd=referral|utmcct=/ig; Load Flags[LOAD_NORMAL] Content Size[35] Mime Type[image/gif]        Request Headers:

      Host[www.Google Analytics.com]

      User-Agent[Mozilla/5.0 (Windows; U; Windows NT 6.0; ja; rv:1.9.1.8)Gecko/20100202 Firefox/3.5.8 GTB6 (.NET CLR 3.5.30729)]

访问日志的内容描述



  

描述  

  

说明  

  

15:13:13.500  

  

访问日#期和时间。小数点部分表示毫秒  

  

[629ms]  

  

文件的读取时间。单位为毫秒  

  

Status: 200[OK]  

  

状态码。请求成功时返回200,重定向时返回300,客户端错误时返回400,服务器端错误时返回500  

  

http://www.Google Analytics.com/__utm.gif  

  

网站分析工具对应的图像请求(网络信标)。网站分析工具由此获取后面的各种参数信息  

  

utmwv  

  

标记的版本信息  

  

utmn  

  

为防止图像缓存而生成的唯一ID  

  

utmhn  

  

正在访问的页面的主机名  

  

utmcs  

  

字符编码  

  

utmsr  

  

屏幕分辨率。宽×长(像素)  

  

utmsc  

  

屏幕色彩数  

  

utmul  

  

浏览器的语言  

  

utmje  

  

Java的支持情况。“1”表示支持,“0”表示不支持  

  

utmfl  

  

Flash的版本  

  

utmdt  

  

页面标题。<TITLE>标签的内容  

  

utmhid  

  

使用Google公司Adsense服务时的ID  

  

utmr  

  

引荐来源(前一个页面的URL)  

  

utmp  

  

正在访问的页面的URL。省略域名部分。  

  

utmac  

  

Google Analytics的账户ID  

  

utmcc  

  

Cookie信息。各个信息表示如下内容。  

utma:识别用户的信息

utmz:活动(Google Analytics上的定义)相关的访问信息

utmcsr:活动的引荐来源

utmccn:活动名称

utmcmd:活动媒介

utmcct:活动的说明文章

  

User-Agent[…]  

  

用户代理(浏览器与OS的信息)  

2.1.3 Apache 模块方法

Apache 模块方法是指在 Apache 上安装访问发生时可以通过自动重写 HTML 代码来追加 IMG 标记的模块,进而收集数据的方法。虽然安装模块会花一些功夫,但是一旦安装完成,就不再需要像网络信标方法那样对测量的页面手动嵌入标记了。

使用 Apache 模块方法收集数据

虽然从在测量的页面中添加标记,以及能获取到大量数据的方面来看,Apache 模块方法与前面的网络信标方法有些近似,但因为 Apache 模块方法是通过模块在页面内直接嵌入图像标记,即使是 JavaScript 无法执行的情况也能够使用此方法。因此,此方法被用于 Mobilog、SiteCatalyst(Mobile)、Visionalist(Mobile)等许多移动用网站分析工具中。

嵌入的测量用图像标记示例(SiteCatalyst)

<img src="http://XXXX.112.2o7.net/b/ss/XXXXXXXXXXXXXXXXXXXX/1/H.20.3--NS/3530497328?[…uid&c2=XXXXXXX&c3=XXXX.jp%2F%3fuid%3XXXXXXXX&c5=XXXXX&[AQE]" border="0">

Apache 模块方法的优缺点

Apache 模块方法有以下的优点。

  • 不需要在每个页面中手动添加标记,省去了添加标记的麻烦
  • 只需要安装模块即可,使用的难度低
  • 实时的网站分析成为可能(安装了工具的话)

另一方面,Apache 方法又有以下的缺点。

  • 需要在每个 Web 服务器上安装模块,如果有多个 Web 服务器时操作会变复杂
  • 如果没有安装模块的权限(共享服务器等情况)则无法使用
  • 可能会与其他的模块发生冲突,安装前需要检验
  • 因为标记没有嵌入就无法测量,所以如果用户打开页面后马上离开,也是无法测量的

2.1.4 包嗅探方法

包嗅探方法是指用专用服务器(包嗅探服务器)复制访问网站时产生的数据包(信息),并将信息发送到统计服务器进行统计的方法。

包嗅探方法

因为包嗅探方法需要如上图所示引入专用的包嗅探服务器,因此安装时需要了解服务器的相关知识。使用的难易度也比其他方法要高,需要与网站技术负责人协作。另外,初期成本(数十万 ~ 数百万日元)也比较高昂。

另一方面,因为这种方法对于网站的内容或者 Web 服务器不会造成任何不良影响(如显示延迟、服务器负荷增加或者 JavaScript 错误等),对于网站而言是最友好的数据统计方法。运营的网站访问数较多的公司可以考虑使用这种方法。采用这种方法的工具有 RTmetrics、Urchin 等。

包嗅探方法的优缺点

包嗅探方法有以下的优点。

  • 因为不需要在各页面中嵌入标记,省去了添加标记的麻烦
  • 使用其他服务器或者域也能够统计
  • 对网站的内容或者 Web 服务器没有任何影响
  • 不会像外部发送网站分析的信息(全都在公司内部结束)

另一方面,包嗅探方法又有以下的缺点。

  • 因为需要专用服务器,初期比较耗费成本和人力
  • 如果没有安装专用服务器就无法使用
  • 如果网站配置的环境不同,需要针对环境分别准备专用服务器

2.1.5 选择合适的数据收集方法

正如上面所说,各种方法都有各自的优缺点,因此不能说使用哪一种方法就一定更好,但是根据下述理由,在分析 PC 网站或者智能手机网站时建议采用网络信标方法。如果已经了解了网络信标方法的缺点,请各位读者思考一下这样做的原因。

  • 初期投资比其他方法少,测量开始前的准备不需要费太多工夫
  • 在一定数量的网站分析工具之中,免费且份额很高的 Google Analytics 也采用了网络信标方法
  • 能够比 Apache 日志方法更快地得到分析数据

另一方面,在分析移动网站时请根据网站的规模决定采用哪种方法。根据笔者的经验,小中规模的网站建议采用 Apache 日志或者模块方法,大规模的网站如果只有一种环境建议采用包嗅探方法。


我们致力于为三农(农业、农村、农民)提供专业物联网解决方案,同时也提供应用软件、微信小程序、手机App、企业网站的开发和跨境电商建站、网络营销等服务,站长微信号(mywit_net),添加后备注“黎辉物联网”,如有相关需求也可通过电子邮件(12tc@sina.cn)与我们取得联系

本站内容均来自互联网,如有涉及到侵权行为,请你及时与站长联系删除!

本文链接:https://www.kumb.cn/3380.html

发表评论

评论列表(0人评论 , 267人围观)
☹还没有评论,来说两句吧...