用Log Parser Studio分析IIS日志
原文:http://www.rupeng.com/News/11/222.shtml?from=timeline&isappinstalled=0
http://www.cnblogs.com/dudu/p/3689384.html
今天下午如鹏网访问量一直特别大,速度很慢,查看了一下服务器的性能监控,发现网络占用率一直飙高在接近100%。
分析IIS日志,发现对/Main/WhoLearning、/Users/IsLogin、/forum/forum.php的请求异常的多。进一步发现来自于同一个地区的两个ip频繁请求这三个页面。
因此屏蔽了这两个IP地址,网站访问流量就瞬间回落了。
日志分析的方法:
下载解压Log Parser Studio(简称LPS),运行之。下载IIS的日志(每天的日志一般位于C:\inetpub\logs\LogFiles\W3SVC1的当天日期的文件名中,比如u_ex151105.log就是20151105的)。
点击LPS的【choose log files】按钮,选择日志文件,如果文件很大则导入过程会非常慢。
主菜单【File】→【New】→【Query】
在下方的“New Query”区域编写查询语句,在【Log Type】中选中【IISW3cLOG】,然后点击红色的感叹号按钮【Execute active Query】。
下面的SQL查询当天请求次数前10的每个路径被请求的次数:
SELECT TOP 10 cs-uri-stem,count(cs-uri-stem) FROM '[LOGFILEPATH]'
where date='2015-11-05'
group by cs-uri-stem
order by count(cs-uri-stem) desc
发现/Main/WhoLearning、/Users/IsLogin、/forum/forum.php这三个地址被请求的次数非常多。执行下面SQL查询查询到底对于/Main/WhoLearning的请求细节:
SELECT * FROM '[LOGFILEPATH]'
where date='2015-11-05' and cs-uri-stem='/Main/WhoLearning'
发现某几个IP访问非常频繁,因此也就定位到了。
注意:IIS默认的访问日志中没有记录每个请求的“发送请求数”和“接收请求数”,因此不好分析哪个地址的流量大。开启记录“发送请求数”和“接收请求数”的方法。IIS选中要设置的网站,在右侧中选择【日志】。点击【选择字段】按钮,在对话框中勾选“发送的字节数”、“接收的字节数”,以后的日志中就记录这些信息了。
补充:
a) 需要先安装Log Parser,下载地址:http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=24659
b) 安装Log Parser Studio,下载地址:http://gallery.technet.microsoft.com/Log-Parser-Studio-cd458765,下载之后解压运行LPS.exe。。