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

为什么要开发vbs写的IIS日志分析工具?

在网上找了很多IIS日志分析工具,功能实在太有限,有的仅能分析百度、谷歌等搜索引擎爬虫的来访次数,远远达不到我们的用户的需求。作为一个小站长,有的时候也要分析一下自己站点的广告点击情况,静态页面的还好说,下载类的业务就不好统计了。耗时一晚上写出来本工具分享给大家。

IIS日志分析工具的使用方法

本工具对于初次接收vbs脚本的用户来说,可能有点麻烦。下面我们就一步一步来说说该工具的使用方法。
1、如果 vbscript 默认引擎非cscript,需要修改称cscript。修改方法很简单,直接在运行中输入:

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日志分析工具代码如下:

'=============================================================
'=       Copyright (c) 2010 猫七(QQ:77068320)     =
'=         All rights reserverd.          =
'=============================================================
'=        IIS日志分析系统 v_1.10.0828         =
'=   使用说明:http://www.miaoqiyuan.cn/p/iis-log-tools  =
'=   作者博客:http://www.miaoqiyuan.cn          =
'=   版权声明:本代码供站长免费使用,传播请保留版权信息  =
'=============================================================
'=  程序简介:在网上找了很多IIS日志分析工具,功能简单,只能 =
'= 分析爬虫来访次数。有时候我们小站长也想分析下广告点击情况 =
'= ,这时候市面上的IIS统计工具就无能为力了。耗时一晚上写出来 =
'= 分享给大家,同时申请落伍,请大家帮顶。          =
'=  申请地址:http://www.im286.com/thread-5021543-1-1.html =
'=============================================================
'= 文件:log.vbs                      =
'= 功能:IIS日志分析,懂程序的朋友可扩展,功能不可限量   =
'=============================================================

dbpath = "D:\log"         '日志文件所在目录
tblna = "test.txt"         '日志文件名,如果修改请同时修改 Schema.ini 中相关节点

function getuag(str)
 if instr(str,"+MSIE+7.0;")>0 then
  getuag = "Internet Explore 7.0"
 elseif instr(str,"+MSIE+8.0;")>0 then
  getuag = "Internet Explore 8.0"
 elseif instr(str,"+MSIE+6.0;")>0 then
  getuag = "Internet Explore 6.0"
 elseif instr(str,"MSIE")>0 then
  getuag = "Internet Explore(Other)"
 elseif instr(str,"curl")>0 then
  getuag = "CUrl"
 else
  getuag = str
 end if
end function

wscript.echo string(60,"=")
wscript.echo "     IIS日志分析工具 By 苗启源(MiaoQiyuan.cn)"
wscript.echo string(60,"=")

set conn = createobject("ADODB.Connection")
conn.open "provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath & ";Extended Properties=""text;HDR=YES;FMT=Delimited;"""

set rs = createobject("ADODB.Recordset")

'统计 链接访问次数
statime = timer()
rs.open "select [cs-uri-stem],count([c-ip]) from [" & tblna & "] group by [cs-uri-stem]",conn,1,1
ga = rs.getrows()
rs.close
wscript.echo " = 访问次数 = | = 独立访客 = | = 访问路径 = "
wscript.echo string(60,"-")
for i = 0 to ubound(ga,2)
 rsid = rsid + 1
 tme = ga(1,i)
 uri = ga(0,i)

 '不支持 COUNT DISTINCT 郁闷,使用笨拙的方法
 rs.open "select DISTINCT [c-ip] from [" & tblna & "] where [cs-uri-stem]='" & uri & "'",conn,1,1
 aip = rs.recordcount
 rs.close

 wscript.echo string(10 - len(tme)," ") & tme & "  | " & string(8 - len(aip)," ") & aip & "   | " & uri
next
wscript.echo string(60,"-")
wscript.echo "  统计:" & rsid & "条记录 查询用时:" & formatnumber((timer() - statime) * 1000,3) & "毫秒"
wscript.echo string(60,"-") & vbCrlf

'统计 访问详情
for i = 0 to ubound(ga,2)
 rsid = 0
 uri = ga(0,i)
 wscript.echo string(60,"=")
 wscript.echo "     访问详情:" & uri
 wscript.echo string(60,"=")
 statime = timer()
 wscript.echo " = 编号 = | = IP地址 = | = 浏览器类型 = "
 rs.open "select DISTINCT [c-ip],[cs(User-Agent)] from [" & tblna & "] where [cs-uri-stem]='" & uri & "'",conn,1,1
 do while not rs.eof
  rsid = rsid + 1
  'IP 自动变成了数字,还没有找到解决方法
  cip = rs(0)
  uag = getuag(rs(1))
  wscript.echo string(8 - len(rsid)," ") & rsid & " | " & string(8 - len(cip)," ") & cip & " | " & uag
  rs.movenext
 loop
 rs.close
 wscript.echo string(60,"-")
 wscript.echo "  统计:" & rsid & "条记录 查询用时:" & formatnumber((timer() - statime) * 1000,3) & "毫秒"
 wscript.echo string(60,"-") & vbCrlf
next

到此这篇关于vbs写的IIS日志分析工具的文章就介绍到这了,更多相关vbs IIS日志分析内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • vbs源码之的IIS日志分析工具

    为什么要开发vbs写的IIS日志分析工具? 在网上找了很多IIS日志分析工具,功能实在太有限,有的仅能分析百度.谷歌等搜索引擎爬虫的来访次数,远远达不到我们的用户的需求.作为一个小站长,有的时候也要分析一下自己站点的广告点击情况,静态页面的还好说,下载类的业务就不好统计了.耗时一晚上写出来本工具分享给大家. IIS日志分析工具的使用方法 本工具对于初次接收vbs脚本的用户来说,可能有点麻烦.下面我们就一步一步来说说该工具的使用方法. 1.如果 vbscript 默认引擎非cscript,需要修改

  • AWStats简介:Apache/IIS的日志分析工具

    你完全不必耐心看完所有内容:简要安装说明如下安装http://sourceforge.net/projects/awstats/ 下载安装包后:GNU/Linux:tar zxf awstats-version.tgzawstats的脚本和静态文件缺省都在wwwroot目录下:将cgi-bin目录下的文件都部署到 cgi-bin/目录下:/home/apache/cgi-bin/awstats/ mv awstats-version/cgi-bin /path/to/apache/cgi-bin

  • YOLOv5中SPP/SPPF结构源码详析(内含注释分析)

    目录 一.SPP的应用的背景 二.SPP结构分析 三.SPPF结构分析 四.YOLOv5中SPP/SPPF结构源码解析(内含注释分析) 总结 一.SPP的应用的背景 在卷积神经网络中我们经常看到固定输入的设计,但是如果我们输入的不能是固定尺寸的该怎么办呢? 通常来说,我们有以下几种方法: (1)对输入进行resize操作,让他们统统变成你设计的层的输入规格那样.但是这样过于暴力直接,可能会丢失很多信息或者多出很多不该有的信息(图片变形等),影响最终的结果. (2)替换网络中的全连接层,对最后的卷

  • 微信 小程序前端源码详解及实例分析

    微信小程序前端源码逻辑和工作流 看完微信小程序的前端代码真的让我热血沸腾啊,代码逻辑和设计一目了然,没有多余的东西,真的是大道至简. 废话不多说,直接分析前端代码.个人观点,难免有疏漏,仅供参考. 文件基本结构: 先看入口app.js,app(obj)注册一个小程序.接受一个 object 参数,其指定小程序的生命周期函数等.其他文件可以通过全局方法getApp()获取app实例,进而直接调用它的属性或方法,例如(getApp().globalData) //app.js App({ onLau

  • php IIS日志分析搜索引擎爬虫记录程序第1/2页

    使用注意: 修改iis.php文件中iis日志的绝对路径 例如:$folder="c:/windows/system32/logfiles/站点日志目录/"; //后面记得一定要带斜杠(/). ( 用虚拟空间的不懂查看你的站点绝对路径?上传个探针查看! 直接查看法:http://站点域名/iis.php 本地查看法:把日志下载到本地 http://127.0.0.1/iis.php ) 注意: //站点日志目录,注意该目录必须要有站点用户读取权限! //如果把日志下载到本地请修改143

  • jQuery源码解读之addClass()方法分析

    本文较为详细的分析了jQuery源码解读之addClass()方法.分享给大家供大家参考.具体分析如下: 给jQuery原型对象扩展addClass功能,jQuery.fn就是jQuery.prototype 复制代码 代码如下: jQuery.fn.extend({ /* 可以看出这是一个函数名叫addClass的插件方法. */     addClass: function( value ) {         var classes, elem, cur, clazz, j, finalV

  • jQuery源码解读之hasClass()方法分析

    本文较为详细的分析了jQuery源码解读之hasClass()方法.分享给大家供大家参考.具体分析如下: 复制代码 代码如下: jQuery.fn.extend({     hasClass: function( selector ) { //将要检查的类名selector赋值给className, l为选择器选择的当前要检查的jQuery对象数组的长度.         var className = " " + selector + " ",          

  • jQuery源码解读之removeAttr()方法分析

    本文较为详细的分析了jQuery源码解读之removeAttr()方法.分享给大家供大家参考.具体分析如下: 扩展jQuery原型对象的方法: 复制代码 代码如下: jQuery.fn.extend({ //name,传入要DOM元素要移除的属性名.     removeAttr: function( name ) { //使用jQuery.fn对象,即jQuery原型对象的each方法遍历当前选择器选择的jQuery对象数组,并返回该jQuery对象以便链式调用.         return

  • jQuery源码解读之removeClass()方法分析

    本文较为详细的分析了jQuery源码解读之removeClass()方法.分享给大家供大家参考.具体分析如下: removeClass()方法和addClass()差别不大.这就来看看: 复制代码 代码如下: jQuery.fn.extend({     removeClass: function( value ) {         var classes, elem, cur, clazz, j, finalValue,             i = 0,             len

  • des加密解密源码 C# key值问题分析

    公司协议安全需求.需要对传输内容做des.md5加密. 因为是新人.刚交给我这个任务的时候有点眩晕.就开始在网上找各种des加密的内容.因为不懂以为需要把原理也搞明白,最后误了时间.把自己也搞糊涂了.当然,逻辑能力强.有兴趣的朋友可以试着去搞搞. 先贴加密.解密的源码: 复制代码 代码如下: /// <summary> /// 加密数据 /// </summary> /// <param name="Text"></param> ///

随机推荐