挑出IIS日志里某一文件的请求次数
生活随笔
收集整理的這篇文章主要介紹了
挑出IIS日志里某一文件的请求次数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
要統計廣告的彈出次數,找不到這種IIS日志分析器,只好寫了個腳本。
=pod說明把iis日志傳到LINUX,再挑出日志里出現關鍵字的行,如cat ex*.log |grep divMove.js>>iis.log再生成excel文件,如xxx.pl iis.log>>iis.csv =cut#!/usr/bin/perl -wuse strict;my $file;my $eachline;my %hash;my @arr_file=@ARGV;foreach $file(@arr_file){open(IIS_LOG,$file)||die"err: $! \n";while (defined ($eachline =<IIS_LOG>)) {#正則#2010-05-20 00:03:15 W3SVC1 218.5.79.57 GET /divMove.js - 80 - 221.178.26.163 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1)+) 218.5.79.57 200 0 64 0 394if($eachline=~/^2010-\d+-\d+\s.+ W3SVC\d*\s+218\.5\.79\.57\s+GET\s+\/divMove.js\s+-\s+80\s+-\s+(?<getip>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+.+\d$/){#print "$+{getip}\n"; #以IP做哈希表的key,累加出現次數if(exists $hash{$+{getip}}){$hash{$+{getip}}=$hash{$+{getip}}+1}else{ $hash{$+{getip}}=1 }}}}my $key;my $value;while (($key, $value) = each %hash){print "$key,$value\n";}
以上腳本生成以下表格
| 202.100.121.46 | 1209 |
| 123.180.14.253 | 185 |
| 222.90.15.209 | 179 |
總結
以上是生活随笔為你收集整理的挑出IIS日志里某一文件的请求次数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: “数据库审计”关键词,重回Google第
- 下一篇: VoIP系列:VoIP的劣势