用 LogParser 將 IIS Log 匯入SQL Server 2005

  • 63585
  • 0
  • IIS
  • 2008-03-23

用 LogParser 將 IIS Log 匯入SQL Server 2005

指令:

"C:\Program Files\Log Parser 2.2\LogParser.exe " "SELECT TO_LOCALTIME(TO_TIMESTAMP([date], [time])), [s-sitename], [s-computername], [s-ip], [cs-method], [cs-uri-stem], [cs-uri-query], [s-port], [cs-username], [c-ip], [cs-version], [cs(User-Agent)], [cs(Cookie)], [cs(Referer)], [cs-host], [sc-status], [sc-substatus], [sc-win32-status], [sc-bytes], [cs-bytes], [time-taken] INTO IISLog FROM C:\WINDOWS\system32\LogFiles\W3SVC1\ex*.log WHERE TO_LOWERCASE (EXTRACT_EXTENSION(cs-uri-stem)) NOT IN ('gif';'jpg';'png';'bmp';'ico';'axd')" -o:SQL -server:192.168.x.x -database:MyDB -driver:"SQL Server" -username:uname -password:passwd-createTable:OFF

藍色 的地方,利用 TO_TIMESTAMP 函數將 Date 與 Time 合併成一個 Datatime 型態的欄位。再利用 TO_LOCALTIME 函數,將 IIS Log 內的 UTC 時間,轉換成本地時間 (GMT +8)。

紅色 的地方,依照自己的設定環境加以更換。