關於windows IIS日誌時間與系統時間相差8小時的問題

關於windows IIS日誌時間與系統時間相差8小時的問題

很多做過網站的朋友在分析IIS日誌的時候會發現IIS日誌的時間與計算機的系統時間不符,比如在中國時區就會相差8小時。具體原因是什麼呢?網 上搜索的結果十有八九讓人做如下操作解決:

在IIS日誌屬性“常 規”標籤下,找到“文件命名和創建使用當地時間”,在其前打勾。實際上,這種方法並不能解決時差問題。
真正的原因是因爲IIS默認 採用W3C 擴展日誌文件格式,而W3C 擴展日誌文件定義日誌採用GMT時間(即格林尼治標準時間),而中國在GMT +8時區,自然就相差八個小時了。要真正解決,有兩個辦法:
1:活動日誌格式更改爲 “Microsoft IIS 日誌文件格式”。此時時間一致。但是。。IIS日誌文件格式記錄的日誌文檔 內容不如W3C擴展日誌文件格式的文檔豐富,比如cs(User-Agent)段的信息就不會有,如果你很重視這些,那不要用此方法了。
2: 使用轉化工具轉化,如Convlog.exe 實用程序, 位於 Winnt\System 32 文件夾,由微軟提供。在命令提示符處, 鍵入: convlog - IE LogFileName - t ncsa +/- GMTOffset : 其中 LogFileName 是對轉換文件和 GMTOffset 名稱是的要更正小時數。 即本地時間與GMT時間差。 例如, 來轉換文件命名爲 " Logfile.log, " 和更正有關東部標準時間, 請使用以下命令: convlog - IE Logfile.log - t ncsa -0500:
附上命令詳解:

用法: convlog [options] LogFile

選項:

-i<i|n|e> = 輸入日誌文件類型

    i - MS Internet 標準日誌文件格式

    n - NCSA 公用日誌文件格式

    e - W3C 擴展日誌文件格式

-t <ncsa[:GMTOffset] | none> 默認值是 ncsa

-o <output directory> 默認值 = 當前目錄

-x 將非 www 數據項保存到 .dmp 日誌文件

-d = 將 IP  地址轉換成 DNS

-l<0|1|2> = MS Internet 標準日期格式

    0 - 月/日/年(默認值,如美國)

    1 - 年/月/日(如中國)

    2 - 日.月.年(如德國)

-c = 即使發現格式不正確,也繼續執行

如:

convlog -ii in*.log -d -t ncsa:+0800

convlog -in ncsa*.log -d

convlog -ii jra*.log -t none

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章