服务器操作系统 统计,iis8做网站日志统计工具例子Windows服务器操作系统 -电脑资料...

什么是日志系统呢? 我这里说的不是 blog, 也不是qzone的日志, 而是web统计中的日志, 比如说统计网站的PV啊, 某个东东的点击啊, 某个人的爱爱啊, 哪个坏蛋报错啊啥的.. 等等这些都算统计的范围...

用什么工具做统计呢?

有的人可能想到做中转URL,比如: 点击广告AV的时候跳转到一个 ad.php, 然后带上些参数, 就成了: ad.php?id=123 等等参数, 然后入库, 但这样的数据是庞大的, 你的库的主力完全不用浪费在这上面...

来我们看下百度是怎么做的:

这是百度广告的某引用页面, 他是通过访问一个图片, 然后带了一堆连妹子都看不懂的参数, 这样就能统计吗?

经过项目中的测试和研究, 发现是行的, 他的思路是这样的:

发送请求(不管是怎么发的) -> 然后 iis/nginx/ 阿帕奇会记录下来这个URL -> 下载/生成日志文件 -> 后端/js处理这个文件 -> 生成要看的数据(可画成图表, 表柱啥的) 你信吗?

实现的过程

注: 此过程为iis8.0环境, nginx,阿帕奇等思路一样

1, 开启一个新域的iis日志, 我这里是W3C 类型的日志, 具体选哪个都一样,只是看自己要的是什么数据了, 然后注意 计划那里, 那里选的东东直接影响着你的日志缓存, 具体自测;

ps:为什么用新域, 因为这个日志文件是针对域名生成的, 如果你在老域上可能会生成很多很多日志文件, 比如你的www.111cn.net 有100万个资源,那么这个日志文件是非常庞大的, 不不如启用一个 click.111cn.net /log.gif 来做, 你不妨去看看百度.

2, 访问这个域的url吧, 如: http://127.0.0.1/log.gif?type=jserror&uid=&ref=http%3A%2F%2Fwww.111cn.net %2Fhtml%2Fxieliang.html&content=%E7%99%BB%E5%BD%95%E5%BC%82%E6%AD%A5%E6%8A%A5%E9%94%99,%E9%94%99%E8%AF%AF%E7%B1%BB%E5%9E%8B%E4%B8%BAjson%E8%A7%A3%E6%9E%90%E5%A4%B1%E8%B4%A5&r=100000 , 你可以多访问点, 然后坐等生成日志吧!

3, 打开日志文件夹,(不要说你不知道), 不出意外的话会生成一个这样的东东:

4, 少年, 打开他看看吧...

如图: 红框的东西是我们访问的, 而绿框里的东西不是我们想要的, 但她确实占空间了, 这也是上面说为啥要尽量新域...

好吧, 有这些数据了, 我们还愁没法用吗?

5, 写后端读取她, 我是用php测试的, 当然你完全可以用js代码如下复制代码

//统计的图片名

define('URLNAME', 'log.gif');

//模拟抓log日志文件

$content = file_get_contents("log.txt");

//查到的每行

$arr = preg_split('/[\n]/', $content);

//行内包括 目标 URLNAME 的

$result = array();

foreach ($arr as $key => $value) {

//如果这行包含目标图片

if(strpos($value, URLNAME) !== FALSE){

$temp = array();

//追加一个all为当前行

$temp['all'] = $value;

//查时间

preg_match('/^(?:[\w\-])+\s(?:[^\s]+?)\s/', $value, $temp2);

if(!empty($temp2)){

$temp['time'] = $temp2[0];

}

//查参数

preg_match('/'.URLNAME.'\s+(\S+?)\s/', $value, $temp2);

if(!empty($temp2)){

$temp['param'] = array();

$temp2 = explode('&', $temp2[1]);

for ($i=0; $i < count($temp2); $i++) {

$temp3 = explode('=', $temp2[$i]);

if(!empty($temp3)){

$temp['param'][$temp3[0]] = urldecode($temp3[1]);

}

}

}

$result[] = $temp;

}

}

echo json_encode(array('data'=>$result));

6, 看下成果吧

图片做统计的优势

小巧, 快速, 因为这个图只有一点点, 但一定要存在, 不如就是404, 虽然说404也能抓取到, 但404本身是个bug

不用库, 全是web server本身的功能, 所以她要强大

应用广泛, 比如 自己定一些参数, type=ad, type=jserror, type=.... 到时候判断这个可以分类

要比后端跳转快

前端应用简单... 你只需 new Image然后src你懂的...

自定义强, 自己根据需要定制参数.

todo

目前我就想到这了, 至于怎么很好的拿iis的日志这还有待研究, 还有就是 怎么很好的 分时间段来画图或者读... 当然可能在地铁的某个角落我就能想到解决方案!

ok, 到此为止, 困了, 下次再试着分析 "百度广告" 的连接方式:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值