• 售前

  • 售后

热门帖子
入门百科

vbs源码之的IIS日记分析工具

[复制链接]
刘冠华 显示全部楼层 发表于 2021-8-19 18:53:37 |阅读模式 打印 上一主题 下一主题

为什么要开发vbs写的IIS日志分析工具?
在网上找了很多IIS日志分析工具,功能着实太有限,有的仅能分析百度、谷歌等搜刮引擎爬虫的来访次数,远远达不到我们的用户的需求。作为一个小站长,有的时间也要分析一下本身站点的广告点击情况,静态页面的还好说,下载类的业务就不好统计了。耗时一晚上写出来本工具分享给各人。
IIS日志分析工具的利用方法
本工具对于初次吸取vbs脚本的用户来说,大概有点麻烦。下面我们就一步一步来说说该工具的利用方法。
1、假如 vbscript 默认引擎非cscript,必要修改称cscript。修改方法很简朴,直接在运行中输入:
  1. cscript //Nologo //H:Cscript
复制代码
即可切换
2、下载IIS日志分析工具 压缩包/vbs/vbs-iis-log-jb51.rar,解压,打开log.vbs,修改dbpath为您当前解压的路径。

3、下载您的log日志文件,删掉前三行和第四行的#Fields: ,保存文件名为test.txt,保存到解压目次。

4、在开始运行中用cmd下令打开下令提示符,直接把 log.vbs拖拽到下令提示符中,回车即可开始分析。
以后会出软件版本吗?
会的,不过最近不会,实在现在的代码,直接拿到vb中,套个界面就比市面上的iis日志工具强盛,但是现在实际还没有成熟,等正式发布时,功能绝对的强盛。
IIS日志分析工具是免费的吗?
是的,本工具供站长免费利用,但是传播请保存我们的版权信息。大概您的建议将会出现在我们未来的软件版中。
vbs写的IIS日志分析工具代码如下:
  1. '=============================================================
  2. '=       Copyright (c) 2010 猫七(QQ:77068320)     =
  3. '=         All rights reserverd.          =
  4. '=============================================================
  5. '=        IIS日志分析系统 v_1.10.0828         =
  6. '=   使用说明:http://www.miaoqiyuan.cn/p/iis-log-tools  =
  7. '=   作者博客:http://www.miaoqiyuan.cn          =
  8. '=   版权声明:本代码供站长免费使用,传播请保留版权信息  =
  9. '=============================================================
  10. '=  程序简介:在网上找了很多IIS日志分析工具,功能简单,只能 =
  11. '= 分析爬虫来访次数。有时候我们小站长也想分析下广告点击情况 =
  12. '= ,这时候市面上的IIS统计工具就无能为力了。耗时一晚上写出来 =
  13. '= 分享给大家,同时申请落伍,请大家帮顶。          =
  14. '=  申请地址:http://www.im286.com/thread-5021543-1-1.html =
  15. '=============================================================
  16. '= 文件:log.vbs                      =
  17. '= 功能:IIS日志分析,懂程序的朋友可扩展,功能不可限量   =
  18. '=============================================================
  19. dbpath = "D:\log"         '日志文件所在目录
  20. tblna = "test.txt"         '日志文件名,如果修改请同时修改 Schema.ini 中相关节点
  21. function getuag(str)
  22. if instr(str,"+MSIE+7.0;")>0 then
  23.   getuag = "Internet Explore 7.0"
  24. elseif instr(str,"+MSIE+8.0;")>0 then
  25.   getuag = "Internet Explore 8.0"
  26. elseif instr(str,"+MSIE+6.0;")>0 then
  27.   getuag = "Internet Explore 6.0"
  28. elseif instr(str,"MSIE")>0 then
  29.   getuag = "Internet Explore(Other)"
  30. elseif instr(str,"curl")>0 then
  31.   getuag = "CUrl"
  32. else
  33.   getuag = str
  34. end if
  35. end function
  36. wscript.echo string(60,"=")
  37. wscript.echo "     IIS日志分析工具 By 苗启源(MiaoQiyuan.cn)"
  38. wscript.echo string(60,"=")
  39. set conn = createobject("ADODB.Connection")
  40. conn.open "provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath & ";Extended Properties=""text;HDR=YES;FMT=Delimited;"""
  41. set rs = createobject("ADODB.Recordset")
  42. '统计 链接访问次数
  43. statime = timer()
  44. rs.open "select [cs-uri-stem],count([c-ip]) from [" & tblna & "] group by [cs-uri-stem]",conn,1,1
  45. ga = rs.getrows()
  46. rs.close
  47. wscript.echo " = 访问次数 = | = 独立访客 = | = 访问路径 = "
  48. wscript.echo string(60,"-")
  49. for i = 0 to ubound(ga,2)
  50. rsid = rsid + 1
  51. tme = ga(1,i)
  52. uri = ga(0,i)
  53.   
  54. '不支持 COUNT DISTINCT 郁闷,使用笨拙的方法
  55. rs.open "select DISTINCT [c-ip] from [" & tblna & "] where [cs-uri-stem]='" & uri & "'",conn,1,1
  56. aip = rs.recordcount
  57. rs.close
  58.   
  59. wscript.echo string(10 - len(tme)," ") & tme & "  | " & string(8 - len(aip)," ") & aip & "   | " & uri
  60. next
  61. wscript.echo string(60,"-")
  62. wscript.echo "  统计:" & rsid & "条记录 查询用时:" & formatnumber((timer() - statime) * 1000,3) & "毫秒"
  63. wscript.echo string(60,"-") & vbCrlf
  64. '统计 访问详情
  65. for i = 0 to ubound(ga,2)
  66. rsid = 0
  67. uri = ga(0,i)
  68. wscript.echo string(60,"=")
  69. wscript.echo "     访问详情:" & uri
  70. wscript.echo string(60,"=")
  71. statime = timer()
  72. wscript.echo " = 编号 = | = IP地址 = | = 浏览器类型 = "
  73. rs.open "select DISTINCT [c-ip],[cs(User-Agent)] from [" & tblna & "] where [cs-uri-stem]='" & uri & "'",conn,1,1
  74. do while not rs.eof
  75.   rsid = rsid + 1
  76.   'IP 自动变成了数字,还没有找到解决方法
  77.   cip = rs(0)
  78.   uag = getuag(rs(1))
  79.   wscript.echo string(8 - len(rsid)," ") & rsid & " | " & string(8 - len(cip)," ") & cip & " | " & uag
  80.   rs.movenext
  81. loop
  82. rs.close
  83. wscript.echo string(60,"-")
  84. wscript.echo "  统计:" & rsid & "条记录 查询用时:" & formatnumber((timer() - statime) * 1000,3) & "毫秒"
  85. wscript.echo string(60,"-") & vbCrlf
  86. next
复制代码
到此这篇关于vbs写的IIS日志分析工具的文章就先容到这了,更多相关vbs IIS日志分析内容请搜刮草根技术分享从前的文章或继续欣赏下面的相关文章盼望各人以后多多支持草根技术分享!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作