Log Parser导入日志到到MSSQL数据库中

Log Parser是一款很不错的IIS日志分析工具,之前也一直使用,主要对IIS 日志(Log)汇总和报表。但是却从没有利用它将IIS日志完整的导入到数据库这一功能。


这两天,公司需要对一个站点某一天的IIS日志(Log)进行详细分析,出一些详细PV、IP 还有许多自定义的报表,最后想了想,也只能将这些日志导入到数据库(Sql Server 2005)中汇总了。由于这一天站点的PV是500W左右,IIS 日志记录有 600W左右,最后整理了下思路,决定采用 Log Parser 将IIS 日志导入到数据库中.


打开 Log Parser 的帮助,在 Log  Parser - > Reference - > Output Formats - > SQL - > Examples 找到了相应的操作,如下:

 
  
LogParser " SELECT Path, KeyName, ValuleName INTO MyTable FROM \HKLM" - i:REG - o:SQL - server:MyServer - database :MyDatabase - driver:"SQL Server" - username:TestSQLUser - password:TestSQLPassword - createTable: ON


可是按照帮助上的例子,导入了将近一个小时也没有成功,最后,没办法,google 半天,找到了正确的命令:

 
  
logparser " SELECT * FROM D:\ 1 . log TO IISLog_table" - o:SQL - server: 192.168 . 1.88 - driver:"SQL Server" - database :Test - username:sa - password: 111111 - createtable: ON


之后开始了导入工作。利用 logparser 将 IIS Log(IIS 日志) 导入到 Sql Server,总体来说非常不错,十分简单,就是速度不是十分的快,算了下,大概一秒只能导入 1200 条 记录左右,当然,这也和我的电脑配置有关系的。建议,导入前,先进行排除下,比如,排除掉 .jpg 或者 其他格式结尾的页面

------------------------------------------------------------------------------------------------

s
logparser "SELECT TO_LOCALTIME(TO_TIMESTAMP([date], [time])) AS LOCALTIME, [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 D:\IISLog\u_ex09073118.log  WHERE TO_LOWERCASE (EXTRACT_EXTENSION(cs-uri-stem)) NOT IN ('gif';'jpg';'png';'bmp';'ico';'axd')" -oConnString:"Driver={SQL Server}; Server=.\SQLEXPRESS; Database=IISLog ;Trusted_Connection=yes;" -ignoreMinWarns:OFF 

如果不使用Trusted_Connection=yes連線方式,可指定:-username:uname -password:passwd-createTable:OFF

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

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

转载于:https://www.cnblogs.com/qiqi9039420/articles/2054010.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值