最近在分析web日誌,發現IIS7日誌中時間與系統時間不一致,即本該上班時間才產生web
的產併發訪問日誌,所有發生在凌晨至上班前。併發
本覺得是系統時間設置錯誤,檢查後一切正常。後查詢資料,原來是這個緣由:ide
日誌的格式有IIS、NCSA、W3C三種:編碼
1.IIS是固定的基於 ASCII 文本的格式,沒法自定義記錄的字段,字段由逗號分隔,spa
記錄的時間爲本地時間文件名前綴爲u_in。日誌
2.NCSA是美國國家超級計算技術應用中心 (NCSA) 公用日誌文件格式,也是固定的基blog
於 ASCII 文本的格式,沒法自定義記錄的字段,字段由空格分隔,記錄的時間爲本地時get
間,並標記了與UTC時間的誤差,文件名前綴爲u_nc。it
3.W3C是可自定義的基於 ASCII 文本的格式,能夠指定記錄的字段,如圖所示,字段io
由空格分隔,記錄的時間採用UTC 格式,文件名前綴爲u_ex。
IIS7默認使用的格式爲W3C,它所能提供的信息是最完整的,NCSA是最簡潔的。所以如
果採用NCSA格式,每一次訪問都會被立刻記錄下來,而W3c格式則須要必定的處理時間,
大約一兩分鐘左右,才能夠在日誌中看到最新的訪問記錄,IIS格式則介於二者之間。
UTC時間又叫協調世界時,是以格林尼治時間爲準,其它地方就要加上所在的時區,中國
在東八區,因此要在UTC時間的基礎上加八個小時。
所採用的時間格式是不能自定義的。
默認的目錄爲%SystemDrive%\inetpub\logs\LogFiles,編碼爲UTF-8。
日誌文件滾動更新就是設置日誌文件建立的時間,有天天一個、每週一個、每個月一個、
每小時一個、最大文件大小(在文件達到某個大小(單位爲字節)時建立新日誌文件)和
不建立新的日誌文件幾種選擇。
「使用本地時間進行文件命名和滾動更新」這句話的意思就是以本地時間爲準建立日誌
文件,而日誌記錄時間的格式仍是由日誌的格式決定,好比選擇了W3C就必定是UTC時間
。