1. ホーム
  2. スクリプト・コラム
  3. 腹筋

IISログ解析ツールのvbsソースコード

2022-01-16 21:02:20

vbsで書かれたIISログ解析ツールを開発する理由は?

IISのログ解析ツールはインターネット上にたくさんありますが、機能が限定されていたり、BaiduやGoogleなどの検索エンジンのクローラーのアクセス数しか解析できないものもあり、ユーザーのニーズからは程遠いものでした。小さなウェブマスターとして、時にはあなたが自分のサイトの広告のクリック数を分析する必要がある、静的なページは大丈夫ですが、ダウンロードのビジネスは良い統計ではありません。それはあなたと共有するために、このツールを書くために一晩かかりました。

IISログ解析ツールの使い方

このツールは、vbsスクリプトを受け取る初めてのユーザーにとっては、少し厄介なものです。ここでは、ツールの使用方法について順を追って説明します。
1、vbscriptのデフォルトエンジンがcscriptでない場合、cscriptに変更する必要があります。

cscript //Nologo //H:Cscript

トグルするだけ

2. IISログ解析ツールのzipファイルをダウンロードする /vbs/vbs-iis-log-jb51.rar 解凍して、log.vbsを開き、dbpathを現在解凍しているパスに変更します。

3. ログファイルをダウンロードし、最初の3行と4行目の#Fields:を削除し、ファイル名をtest.txtとして保存し、解凍したディレクトリに保存してください。

4. スタートランのcmdコマンドでコマンドプロンプトを開き、log.vbsを直接コマンドプロンプトにドラッグし、Enterすると解析が開始されます。

将来のソフトウェアバージョンはありますか?

はい、でも最近はないです。実際、今のコードは、vbに直接取り込んでインターフェースを設定すると、市販のiisロギングツールよりも強力ですが、実はまだ成熟しておらず、正式にリリースされれば、絶対に強力なものになるでしょう。

IISログ解析ツールは無料ですか?

はい、このツールはウェブマスターが無料で使用できます。ただし、配布の際には当社の著作権情報を保管してください。ただし、配布の際には著作権情報をお控えください。

vbsで書かれたIISログ解析ツールのコードは以下の通りです。

'=============================================================
'= Copyright (c) 2010 Cat 7 (QQ:77068320) =
'= All rights reserverd. =
'=============================================================
' = IIS Log Analysis System v_1.10.0828 =
'= Instructions for use: http://www.miaoqiyuan.cn/p/iis-log-tools =
'= Author's blog: http://www.miaoqiyuan.cn =
'= Copyright: This code is free for webmasters to use, please keep the copyright information for dissemination =
'=============================================================
'= Introduction to the program: found a lot of IIS log analysis tools on the Internet, simple functionality, only =
'= Analysis of the number of crawler visits. Sometimes we small webmaster also want to analyze the advertising click situation = '=
'= , this time the market's IIS statistics tools can not help. Spend a night to write out = '=
'= Share it with everyone, while applying for the outdated, please help top.          == sync, corrected by elderman == @elder_man
'= Application address: http://www.im286.com/thread-5021543-1-1.html =
'=============================================================
' = File: log.vbs =
'= function: IIS log analysis, know the program friends can be extended, the function is not limited =
'=============================================================
 
dbpath = "D:\log" 'log files are located in the directory
tblna = "test.txt" 'log file name, if modified please also modify the relevant node in 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 Log Analysis Tool 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")
 
'Count the number of link visits
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 " = number of visits = | = unique visitors = | = access path = "
wscript.echo string(60,"-")
for i = 0 to ubound(ga,2)
 rsid = rsid + 1
 tme = ga(1,i)
 uri = ga(0,i)
  
 'Not support COUNT DISTINCT depressed, use the clumsy method
 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 & " | " quot; & uri
next
wscript.echo string(60,"-")
wscript.echo " statistics: " & rsid & " records Query time: " & formatnumber((timer() - statime) * 1000,3) & " milliseconds"
wscript.echo string(60,"-") & vbCrlf
 
 
'Statistics Access details
for i = 0 to ubound(ga,2)
 rsid = 0
 uri = ga(0,i)
 wscript.echo string(60,"=")
 wscript.echo " access details: " & uri
 wscript.echo string(60,"=")
 statime = timer()
 wscript.echo " = number = | = IP address = | = browser type = "
 rs.open "select DISTINCT [c-ip],[cs(User-Agent)] from [" & tblna & "] where [cs-uri-stem]='" & uri & "'& quot;,conn,1,1
 do while not rs.eof
  rsid = rsid + 1
  'IP automatically becomes a number, haven't found a solution yet
  cip = rs(0)
  uag = getuag(rs(1))
  wscript.echo string(8 - len(rsid)," ") & rsid & " | " & string(8 - len(cip)," " ") & cip & " | " quot; & uag
  rs.movenext
 loop
 rs.close
 wscript.echo string(60,"-")
 wscript.echo " statistics:" & rsid & " records Query time: " & formatnumber((timer() - statime) * 1000,3) & " milliseconds"
 wscript.echo string(60,"-") & vbCrlf
next

この記事はvbsで書かれたIISログ解析ツールのすべてです、より関連するvbs IISログ解析の内容は、スクリプトハウスの過去の記事を検索してくださいまたは、次の関連記事を参照してください、あなたは将来的にもっとスクリプトハウスをサポートすることを願っています!...