网站日志分析
- 格式:pdf
- 大小:154.40 KB
- 文档页数:11


Linux系统拥有非常灵活和强大的日志功能,可以保存几乎所有的操作记录,并可以从中检索出我们需要的信息。
大部分Linux发行版默认的日志守护进程为 syslog,位于 /etc/syslog 或 /etc/syslogd,默认配置文件为 /etc/syslog.conf,任何希望生成日志的程序都可以向 syslog 发送信息。
Linux系统内核和许多程序会产生各种错误信息、警告信息和其他的提示信息,这些信息对管理员了解系统的运行状态是非常有用的,所以应该把它们写到日志文件中去。完成这个过程的程序就是syslog。syslog可以根据日志的类别和优先级将日志保存到不同的文件中。例如,为了方便查阅,可以把内核信息与其他信息分开,单独保存到一个独立的日志文件中。默认配置下,日志文件通常都保存在“/var/log”目录下。
日志类型
下面是常见的日志类型,但并不是所有的Linux发行版都包含这些类型:
类型 说明
auth 用户认证时产生的日志,如login命令、su命令。
authpriv 与 auth 类似,但是只能被特定用户查看。
console 针对系统控制台的消息。
cron 系统定期执行计划任务时产生的日志。
daemon 某些守护进程产生的日志。 ftp
FTP服务。
kern 系统内核消息。
local0.local7 由自定义程序使用。
lpr 与打印机活动有关。
mail 邮件日志。
mark 产生时间戳。系统每隔一段时间向日志文件中输出当前时间,每行的格式类似于 May 26 11:17:09 rs2 -- MARK --,可以由此推断系统发生故障的大概时间。
news 网络新闻传输协议(nntp)产生的消息。
ntp 网络时间协议(ntp)产生的消息。
user 用户进程。
uucp UUCP子系统。
日志优先级
常见的日志优先级请见下标:
优先级 说明
emerg 紧急情况,系统不可用(例如系统崩溃),一般会通知所有用户。
最流行的4大网站Web服务器免费开源日志分析工具
网上流行的免费网站Web服务器日志分析工具很多,有些工具因其某些方面的优点得到网站站长的认可而广泛流行。大多数的Web日志分析工具都想努力从日志纪录出挖掘出尽可能多的信息,但是能够稳定地完成各项分析,让分析数据具有可读性,并能图文并茂地展示分析结果的软件较少见。
1、AWStats
提到开源分析工具,我们不得不首先介绍AWStats。这个软件不但在国际上流行,就是在国内也被广泛采用。究其原因主要是这个软件的图形界面优秀,并且以很好的形式展示信息。随便浏览一下,用户就能够看到所有可以提供的报告。AWStats可以很好地支持中文。
AWStats主要优点:
使用跨平台的Perl CGI语言,可以很好地在Windows、Unix、Linux等操作系统上运行;
报告架构逻辑清晰,易读性较强;
配置安装较简单,不需要本地编译安装;
可以很好地支持中文;
软件版本升级较快,最新版更新了中文搜索引擎、浏览器等。
AWStats主要缺点:
缺少对内容(如栏目、频道)等的深入分析;
缺少对中国地理信息的分析;
对搜索引擎和关键词分析深度不够(与WebTrend对比);
运行速度稍慢(与Webalizer对比);
报告中只有简单的棒图,没有使用更有表意的折线图、饼图和面积图等;
缺少访问次数、每次访问点击页面数等一些关键统计项目。
2、Webalizer 曾经有很多人喜欢这个工具,因为这个工具运行的速度非常快。然而这个工具软件的图形不是很理想,从审美学的角度看并不是那样吸引人。Webalizer给出的统计报告谈不上分析深度,与Awstats相比,Webalizer缺少不少报表,而且这个软件很久没有更新了,所以除了过去的铁杆支持者,新用户越来越少。
Webalizer优点:
使用C语言编写,运行速度快;
可以跨平台运行;
可以提供图文并茂的基本报告。
Webalizer缺点:
IIS Log参数详解:
date(日期) 2007-11-17
time(时间) 16:02:09
cs-method(方法) GET
cs-uri-stem(URI资源) /b2b_cplist.asp //代表访问的资源是当前这个文件
cs-uri-query(URI查询) catid=30 // 具体的访问参数
(cs-uri-stem+ cs-uri-query=实际访问的文件:/b2b_cplist.asp? catid=30)
s-port(服务器端口) 80
c-ip(客户端IP) 211.155.23.176(实际是网站所在服务器的IP)
cs(User-Agent) Baiduspider+(+/search/spider.htm) //百度在收录你呢J
cs(Referer) (引用站点) 搜索的站点
sc-status(协议状态) 200 //200表示OK
sc-substatus(协议子状态) 0
sc-win32-status(Win32状态) 0
sc-bytes(发送的字节数) 1329 //表示当前文件的大小
日期 date
时间 time
客户IP地址 c-ip
用户名 cs-username
方法 cs-method
URI资源 cs-uri-stem
协议状态 sc-status
发送字节数 sc-bytes
协议版本 cs-version
用户代理 cs(User-Agent)
参照 cs(Referer)
HTTP协议状态码的含义,协议状态sc-status,是服务器日记扩展属性的一项。下面是各状态码含义列表:
"100" : Continue 客户必须继续发出请求
"101" : witching Protocols 客户要求服务器根据请求转换HTTP协议版本 200交易成功
⽹站流量⽇志分析(数据采集之Flume采集)⽬录
⽹站流量⽇志分析的意义
通过分析⽤户的⾏为数据 让更多的⽤户沉淀下来变成会员 赚取更多的钱。
如何进⾏⽹站分析
流量分析
- 质量分析 在看重数量的同时 需要关注流量的质量 所谓的质量指的是流量所能带来产⽣的价值。- 多维度细分 维度指的是分析的问题的⾓度 在不同的维度下 问题所展⽰的特性是不⼀样的
内容导航分析
从页⾯的⾓度分析 ⽤户的访问⾏为轨迹
转化分析(漏⽃模型分析)
从转化⽬标分析 分析所谓的流失率转化率 漏⽃模型:层层递减 逐级流失的形象描述
⽹站流量⽇志分析的数据处理流程
按照数据的流转流程进⾏ 通俗概括就是数据从哪⾥来⼀直到数据到哪⼉去数据采集
- 数据从⽆到有的过程:通过技术把客观事件量化成为数据(传感器收集 服务器⽇志收集)- 数据搬运过程:把数据从⼀个存储介质传递到另⼀个存储介质中(Apache Flume)
数据预处理
- ⽬的:保证后续正式处理的数据是格式统⼀、⼲净规则的结构化数据- 技术:任何语⾔软件只要能够接受数据处理数据并且最终输出数据 都可以⽤于数据预处理 **选择MapReduce** - MR本⾝是java程序,语⾔⽐较熟悉 可以⽆缝的调⽤java现有的开源库进⾏数据处理 - MR是分布式的程序 在预处理中 如果数据量⽐较⼤ 可以分布式并⾏计算处理 提⾼效率数据⼊库
- 库:⾯向分析的数据仓库,也是就会Apache Hive- ⼊库的本质:经过ETL(抽取、转换、加载)把各个不同的数据源集中加载到数仓的分析主题下⾯。
数据分析
- 本质:根据业务需求 使⽤hive sql计算统计出各种不同的指标 分析是⼀个持续的过程
数据可视化
尽量的使⽤图形表格的形式 把分析的结果规律展⽰给别⼈看 也称之为数据报表
埋点数据采集
数据从⽆到有的采集 如何把⽤户的访问⾏为记录下来变成⽹站访问⽇志
数据采集⽅式及其优缺点
### ⽹站⽇志⽂件
⽹站的web服务器⾃带⽇志记录的功能 简单便捷的收集⼀些基础的属性信息