WEB日志是网站分析和网站数据数据整理最基础的数据,了解其格式和组成将有利于更好地进行数据的收集、处理和分析。

一、日志格式类型

目前常见的WEB日志格式主要由两类,一类是Apache的NCSA日志格式,另一类是IIS的W3C日志格式。NCSA格式又分为NCSA普通日志格式(CLF)和NCSA扩展日志格式(ECLF)两类,目前最常用的是NCSA扩展日志格式(ECLF)及基于自定义类型的Apache日志格式;而W3C扩展日志格式(ExLF)具备了更为丰富的输出信息,但目前的应用并不广泛,所以这里主要介绍的是NCSA扩展日志格式(ECLF)。

二、常见日志格式的组成

这是一个最常见的基于NCSA扩展日志格式(ECLF)的Apache日志样例:

58.61.164.141 – – [22/Feb/2010:09:51:46 +0800] “GET / HTTP/1.1″ 206 6326 ” http://www.google.cn/search?q=webdataanalysis” “Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)”

可以看到这个日志主要由以下几个部分组成:

访问主机(remotehost)显示主机的IP地址或者已解析的域名。

标识符(Ident)由identd或直接由浏览器返回浏览者的EMAIL或其他唯一标示,因为涉及用户邮箱等隐私信息,目前几乎所有的浏览器就取消了这项功能。

授权用户(authuser)用于记录浏览者进行身份验证时提供的名字,如果需要身份验证或者访问密码保护的信息则这项不为空,但目前大多数网站的日志这项也都是为空的。

日期时间(date)一般的格式形如[22/Feb/2010:09:51:46 +0800],即[日期/月份/年份:小时:分钟:秒钟时区],占用的的字符位数也基本固定。

请求(request)即在网站上通过何种方式获取了哪些信息,也是日志中较为重要的一项,主要包括以下三个部分:

请求类型(METHOD)常见的请求类型主要包括GET/POST/HEAD这三种;

请求资源(RESOURCE)显示的是相应资源的URL,可以是某个网页的地址,也可以是网页上调用的图片、动画、CSS等资源;

协议版本号(PROTOCOL)显示协议及版本信息,通常是HTTP/1.1或HTTP/1.0。

状态码(status)用于表示服务器的响应状态,通常1xx的状态码表示继续消息;2xx表示请求成功;3xx表示请求的重定向;4xx表示客户端错误;5xx表示服务器错误。

传输字节数(bytes)即该次请求中一共传输的字节数。

来源页面(referrer)用于表示浏览者在访问该页面之前所浏览的页面,只有从上一页面链接过来的请求才会有该项输出,如果是新开的页面则该项为空。上例中来源页面是google,即用户从google搜索的结果中点击进入。

用户代理(agent)用于显示用户的详细信息,包括IP、OS、Bowser等。

三、日志格式扩展

apache日志格式可以自定义来配置其输出格式,常见的基于NCSA扩展日志格式(ECLF)自定义添加的包括域名(domain)和cookie。其中域名在一个网站拥有二级域名或者子域名时,可以更好地区分日志;而cookie可以作为用户的身份标识。其他具体的自定义信息详见:Custom Log Formats

四、导入日志数据到MySQL中

访问分析是SEO的一项重要工作,但统计、分析工具毕竟功能是针对大众的,很多时候SEO需要一些特定的数据,是统计分析软件、程序所不能提供的。这样,直接的Web日志分析就是最合适的了,日志中会记录每一个访问情况,只要按自己的意愿提取、组合,就能得到想要的数据。使用SQL语句分析是最方便的,需要什么样的数据,只要使用相应的SQL命令就能实现。

导入Web日志到MySQL数据库的实现

1、修改Apache日志格式

修改Web日志格式为:

Logformat combined %>a,%ui,%un,[%tl],”%rm %ru HTTP/%rv”,%Hs,%h”,”%{User-Agent}>h”,%Ss:%Sh

SQL需要导入的内容有特定的分隔符,Apache的日志默认是以空格分隔的,而有些内容(如状态码中的 200 610)也包含空格,这就无法准确的导入。将日志格式修改为以逗号分隔,就能准确的导入了。还可以根据自己的需要,取消日志格式中不需要的内容,减少日志文件大小。

2、建立MySQL数据表

drop table if exists weblog;

create table weblog (

id int unsigned auto_increment PRIMARY KEY not null,

l_date date,

l_time time,

c_ip varchar(15),

s_ip varchar(15),

s_port varchar(5),

method varchar(10),

path varchar(255),

query varchar(255),

status varchar(3),

domain varchar(50),

system varchar(200)

);

注:上面只是一个MySQL数据表结构范例,没有与上一步日志格式对应,请勿直接复制使用!

新建一个数据库,数据表结构与日志格式对应起来。

3、导入日志到MySQL中

LOAD DATA INFILE ’/日志位置/日志文件’ INTO TABLE weblog FIELDS TERMINATED BY ‘,’;

weblog 对应上面的数据表名。

另外,乐思蜀从网上找到一个将IIS日志导入到MySQL数据库的.pl程序,需要的点这里下载(Readme.txt为使用说明)。

五、常用日志分析工具

1.awstats

2.analog

3.webalizer

4.PHPMyVisites

本文参考:

mysql+web日志分析工具_WEB日志格式及分析工具相关推荐

  1. c mysql web开发实例教程_Web开发(六)MySql

    数据库简介 数据库(DB) 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合.数据库中的数据按一定的数学模型组织.描述和存储,具有较小的冗余,较高的数据独立性和易扩 ...

  2. web 流程图工具_Web技术在云剪辑工具中的技术实践

    云剪辑是集视频制作.生产.分发等为一体的在线视频制作平台,具备工具及服务两方面能力:工具方面,云剪辑具备全面视频剪辑能力,相比行业中其他在线剪辑工具能力更强大,支持范围包括多轨道音视频合成.音视频素材 ...

  3. rgb颜色查询工具_Web前端页面重构之工具篇(Photoshop)

    一.说在前面的话 1.1 职责:拒绝"图片仅供参考请以实物为准" 团队的协作流程一般分为以下几个阶段: 专业的设计师做设计 由前端工程师切图重构还原成浏览器能渲染的页面,再开发功能 ...

  4. 语音云识别工具_语音识别工具_web语音识别应用程序的工具 - 云+社区 - 腾讯云...

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 语音识别服务具备识别准确率高.接入便捷.性能稳定等特点. 腾讯云语音识别 ...

  5. mysql+web日志分析工具_用Python+MySQL实现2017年web日志分析报告

    日志分析在web系统中故障排查.性能分析方面有着非常重要的作用.目前,开源的ELK系统是成熟且功能强大的选择.但是部署及学习成本亦然不低,这里我实现了一个方法上相对简单(但准确度和效率是有保证的)的实 ...

  6. MySql(四):常用工具、日志、复制

    1. MySql中常用工具 1.1 mysql 该mysql不是指mysql服务,而是指mysql的客户端工具.语法 : mysql [options] [database] 1.1.1 连接参数 : ...

  7. Mysql深入优化(四)--- MySQL常用工具、日志、主从复制、综合案例

    序列号 内容 链接 1 Mysql深入优化 (一) ----- 索引.视图.存储过程.触发器 https://blog.csdn.net/qq_43061290/article/details/125 ...

  8. MySQL 通用查询日志和慢查询日志分析

    MySQL中的日志包括:错误日志.二进制日志.通用查询日志.慢查询日志等等.这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志. 1)通用查询日志:记录建立的客户端连接和执行的语句. 2)慢查 ...

  9. MySQL数据库:通用查询日志和慢查询日志分析

    MySQL中的日志包括:通用查询日志.慢查询日志.错误日志.二进制日志等等.这里主要记录一下两种比较常用的日志:通用查询日志和慢查询日志. (1)通用查询日志:记录建立的客户端连接和执行的语句. (2 ...

最新文章

  1. Python+Matplotlib制作动画
  2. Django 的工程创建
  3. kotlin教程(1)
  4. 1.5.1 Number Triangles 数字金字塔
  5. linux mysql show_Linux下 MySQL Show命令的使用
  6. linux里卸载mysql数据库,Linux下卸载MySQL数据库
  7. 华为连接wifi显示wifi未连接服务器,华为路由器wifi连接上不能上网怎么办?
  8. React Native常用三方组件库大全
  9. 链家房源数据爬取(Scrapy)
  10. Android 仿微信回复评论点赞效果
  11. c word to html 走样,打印机打印效果走样解决办法.pptx
  12. 2019年安徽省学业水平考试计算机,2019年安徽高中学业水平考试信息技术与通用技..._报关水平_帮考网...
  13. visio2016安装遇到的坑
  14. 谷粒学苑 —— 9、课程管理:课程列表
  15. RabbitMQ宕机后,消息100%不会丢失吗
  16. PB使用http协议、https协议(简单便捷)
  17. 响应式网站-- css媒体查询 字体大小
  18. LWN:5.18 合并窗口,第二部分!
  19. 蟋蟀的xss淫荡教程之如何劫持OSC用户账号
  20. python 编码转换 专题

热门文章

  1. html文字图片一起轮播卡片,简单的堆叠卡片样式jQuery轮播图插件
  2. 《COM技术内幕》笔记(1)
  3. 【金猿产品展】齐治特权账号管理系统——数据中心账号和密码管理平台
  4. 苹果6电池价格_格派 | 11月6日电池金属价格指数
  5. 微信端视频播放防被浏览器劫持
  6. mysql 断电_mysql的断电恢复能力
  7. 137.菜单悬停放大特效
  8. C#桌面办公应用-工资管理系统系列五
  9. com.alibaba.fastjson.JSONException: default constructor not found. class com.srbl.mytx.domain.Locati
  10. 小白装修手册 篇十四:无中介购房攻略:亲历总结二手房交易流程及注意事项