IIS的日志启用以后,我们就可以通过其生成的日志内容了解网站运行的具体数据,学会分析IIS日志对于网站管理员来说很有用,有个时候遇到的故障我们摸不着头脑,但是学会了查看IIS日志之后,我们可以很精确的查找到错误详细信息,及时采取对应措施对网站进行维护。
比如以下为IIS日志内容
#Software: Microsoft Internet Information Services 6.0
#Version: 1.0
#Date: 2015-07-06 02:34:32
#Fields: date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status
2015-07-06 02:34:32 W3SVC1 127.0.0.1 GET /a.php - 80 - 127.0.0.1 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.4506.2152;+.NET+CLR+3.5.30729;+.NET4.0C;+.NET4.0E) 200 0 0
2015-07-06 02:34:32 W3SVC1 127.0.0.1 GET /a.php =PHPE9568F34-D428-11d2-A769-00AA001ACF42 80 - 127.0.0.1 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.4506.2152;+.NET+CLR+3.5.30729;+.NET4.0C;+.NET4.0E) 200 0 0
2015-07-06 02:34:32 W3SVC1 127.0.0.1 GET /a.php =PHPE9568F35-D428-11d2-A769-00AA001ACF42 80 - 127.0.0.1 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.4506.2152;+.NET+CLR+3.5.30729;+.NET4.0C;+.NET4.0E) 200 0 0
下面我们不通过工具,来分析一下这则日志的含义:
#Software: IIS的软件版本,当前使用的是IIS6.0
#Version:版本
#Date:日志的生成时间
#Fields:字段,显示记录信息的格式
如:2015-07-06 02:34:32 W3SVC1 127.0.0.1 GET /a.php
此段日志给我们传达的信息是:2015年7月6日,IP为127.0.0.1的计算机向我们的服务器请求一个a.php的文件(当然这是本机测试的日志),“GET”表示请求;
要读懂IIS日志关键在于知道关键字段的含义:
请求动作 GET /seek/images/ip.gif - 200
返回结果 - 200 (用数字表示,如页面不存在则以404返回)
浏览器类型 Mozilla/5.0+
系统等相关信息 X11;+U;+Linux+2.4.2-2+i686;+en-US;+0.7
当然以上列举只是很简单的字段,对于不理解的字段可以查阅有关资料!
对于刚入门的新手菜鸟,看不懂日志内容怎么办?不用担心,我们可以用IIS日志分析工具进行分析,这些工具的解析不仅直观,而且省时省力。
我从网上下载了一个IIS日志分析工具,简单演示一下使用方法:
双击运行“IISLogViewer.exe”,打开后只需打开日志的路径;
查看明细,再选择要分析的日志文件;会显示状态码;
双击状态码说明可以查看状态码的来源位置;
当然工具的使用还是需要一定的操作熟练度的,有时候后几千行日志状态码,怎样快速定位到我们需要查看的位置,还是需要长期的使用经验积累的。