在网络日志中每条日志通常代表着用户的一次访问行为例如下面就是一条典型的apache日志:
211.87.152.44 – – [18 / Mar / 2005:12: 21:42 +0800]“ GET / HTTP / 1.1” 200 899“”“ Mozilla / 4.0(兼容; MSIE 6.0; Windows NT 5.1; Maxthon)” 例如访问者的IP访问时间访问的目标网页来源的地址以及访问者所使用的客户端的UserAgent信息等-SEO。如果需要更多的信息则要用其他手段去获取:例如想得到用户屏幕 的分辨率一般需要使用js代码单独发送请求;而如果想得到某个用户访问的特定新闻标题等信息则可能需要Web应用程序在自己的代码里输出基础知识。网站日志中包含的人数很少-主要是产品分析人员会关注的信息最简单的我们可以从中获取网站每类页面的PV值(PageView页面访问量)独立IP数(即去) 重之后的IP数量)等;稍微复杂一些的可以计算得出用户所检索的关键字排行榜用户停留时间最高的页面等;更复杂的生成广告点击模型分析用户行为特征等等方法。
既然这些数据手段的有用那么当然已经有无数现成的工具可以帮助我们来分析它们例如awstatsWebalizer都是专门用于统计分析的Web服务器日志的免费程序分析。产品它们的不分析直接日志或者通过让用户在页面中嵌入js代码的方式来直接进行数据统计或者说我们可以认为它是直接让日志输出到了它们的服务器SEO。典型的代表产品-大名鼎鼎 的Google Analytics(分析)另外还有国内的cnzz百度统计等网站。
很多人可能会说既然如此我们为什么还需要自己来分析日志有必要吗?当然有日志。员)需求是无穷尽的上面说的这几类工具虽然很好很强大但显然没办法满足全部需求超越。的的统计分析功能可以做一定程度的配置但是依然很有限的。要进行稍复杂点的分析或者要做基于日志的数据收集依然需要自己来完成。工具都是只能用于单机的数据量稍大就没辙了。同时那些提供在线分析的服务对于相应站点通常也有最大流量的限制-这是很容易理解的他们也需要考虑服务器 的负载。
怎么进行日志分析
进行少量数据的情况
先考虑最简单的情况 在数据规模比较小的时候也许是几十MB几百MB或者几十GB总之就是在单机处理尚能忍受的时候。一切都很好办现成的各种Unix / Linux工具- awkgrepsortjoin等都是日志分析的利器如果有人想知道某个页面的PV一个wc + grep就能搞定。是perl配合伟大的正则表达式基本就可以解决所有的问题。awk' END {for(b in a)print b” t” a [b]}'| sort -k2 -r | head -n 100
不过当我们需要更多去 的时候上述的做法在可能之后让我们头疼如何进行各种日志文件用于分析的脚本文件crontab文件等等的维护并且可能会存在大量重复的代码来做数据格式的 解析和清洗这个时候也许就需要更合适的东西某种-数据库。
当然要使用数据库来进行日志分析还是需要一些代价的seo优化要使用数据库来进行日志分析还是需要一些代价的最主要的就是如何将各种替代的日志文件导入 的好中有各种现成的开源免费的工具来帮助我们做这件事情并且在日志种类不太多的时候自己 例如可以将上面的日志去掉一点的插入然后引入如下的数据库中:{超越SEO:网站日志分析方法概述-SEO基础知识}