首页 > 代码库 > IIS 7 出现日志文件时间与服务器时间不符

IIS 7 出现日志文件时间与服务器时间不符

  最近在分析web日志,发现IIS7日志中时间与系统时间不一致,即本该上班时间才产生


的产并发访问日志,全部发生在凌晨至上班前。

技术分享

本以为是系统时间设置错误,检查后一切正常。后查询资料,原来是这个原因:


  日志的格式有IIS、NCSA、W3C三种:


  1.IIS是固定的基于 ASCII 文本的格式,无法自定义记录的字段,字段由逗号分隔,


记录的时间为本地时间文件名前缀为u_in。

  2.NCSA是美国国家超级计算技术应用中心 (NCSA) 公用日志文件格式,也是固定的基


于 ASCII 文本的格式,无法自定义记录的字段,字段由空格分隔,记录的时间为本地时


间,并标记了与UTC时间的偏差,文件名前缀为u_nc。

  3.W3C是可自定义的基于 ASCII 文本的格式,可以指定记录的字段,如图所示,字段


由空格分隔,记录的时间采用UTC 格式,文件名前缀为u_ex。


  IIS7默认使用的格式为W3C,它所能提供的信息是最完整的,NCSA是最简洁的。因此如


果采用NCSA格式,每一次访问都会被马上记录下来,而W3c格式则需要一定的处理时间,


大约一两分钟左右,才可以在日志中看到最新的访问记录,IIS格式则介于两者之间。

UTC时间又叫协调世界时,是以格林尼治时间为准,其它地方就要加上所在的时区,中国


在东八区,所以要在UTC时间的基础上加八个小时。


所采用的时间格式是不能自定义的。


默认的目录为%SystemDrive%\inetpub\logs\LogFiles,编码为UTF-8。


日志文件滚动更新就是设置日志文件创建的时间,有每天一个、每周一个、每月一个、


每小时一个、最大文件大小(在文件达到某个大小(单位为字节)时创建新日志文件)和


不创建新的日志文件几种选择。

“使用本地时间进行文件命名和滚动更新”这句话的意思就是以本地时间为准创建日志


文件,而日志记录时间的格式还是由日志的格式决定,比如选择了W3C就一定是UTC时间



本文出自 “11628832” 博客,请务必保留此出处http://11638832.blog.51cto.com/11628832/1892974

IIS 7 出现日志文件时间与服务器时间不符