2013-07-22 20 views
7

ログパーサークエリを使用して、IISログファイルのユーザーエージェントフィールドからブラウザ名とバージョン、OS名とバージョンを検索します。ログパーサーのIISログファイルからブラウザ名とバージョンを取得

User-Agentの文字列は、ブラウザとデバイスごとに異なる形式であるため、ブラウザの名前とバージョンをログパーサークエリで各文字列から正確に取得する方法はありますか?実際にDBテーブルに完全なUA文字列を格納しようとしています。したがって、格納されたフィールド値からブラウザとバージョン番号を取得するためにSQLで使用できる他の関数はありますか?

私は、ブラウザの名前を見つけるために、このクエリを試してみました:

SELECT top 100 case strcnt(cs(user-agent), 'Firefox') 
when 1 THEN 'Firefox' 
else 
case strcnt(cs(user-agent), 'MSIE+6') 
when 1 THEN 'IE 6' 
else 
case strcnt(cs(user-agent), 'MSIE+7') 
when 1 THEN 'IE 7' 
else case strcnt(cs(user-agent), 'Chrome') 
when 1 THEN 'Chrome' 
else case strcnt(cs(user-agent), 'MSIE ') 
when 1 THEN 'IE' 
else case strcnt(cs(user-agent), 'Safari ') 
when 1 THEN 'Safari' 
else case strcnt(cs(user-agent), 'Opera ') 
when 1 THEN 'Opera' 
ELSE 'Unknown' 
End End End End End End End as Browser 

は、ブラウザ名を取得するログパーサーまたはSQLで利用可能な他の機能はありますか?また、どのようにブラウザのバージョンを取得するには?

答えて

6

IISログファイルからユーザーエージェントの詳細を知りたい場合は、ログパーサーを使用する必要があります。次のクエリを使用して、ユーザーエージェントを取得できます。

は、あなたがインストールされていない場合はhereからインストールすると、次のよう

LogParser.exe -i:W3C "Query" -o:CSV 

を使用してみてくださいそれはあなたがすることができ、次の

UserAgent Hits 
iisbot/1.0+(+http://www.iis.net/iisbot.html) 104 
Mozilla/4.0+(compatible;+MSIE+8.0;… 77 
Microsoft-WebDAV-MiniRedir/6.1.7600 23 
DavClnt 

のような出力を生成しますLog Parserツールをインストールしているホープ

SELECT 
    cs(User-Agent) As UserAgent, 
    COUNT(*) as Hits 
FROM c:\inetpub\logs\LogFiles\W3SVC1\* 
GROUP BY UserAgent 
ORDER BY Hits DESC 
hereから続きを読む。

+2

お返事ありがとうございます。 IISログファイルからユーザーエージェント文字列を取得しました。しかし、私はユーザー名文字列からブラウザ名とバージョンを取得しようとしています。すべてのユーザーエージェントの文字列が異なる形式を持っているので、ブラウザの名前とバージョンを取得する方法がわかりません。私は、ブラウザの名前とバージョン番号を取得するために、ログパーサクエリまたはSQLクエリで使用する関数を探しています。 – user1905397

2
select distinct 
    case strcnt(cs(user-agent),'Chrome') when 1 THEN 'Chrome' 
    else case strcnt(cs(user-agent),'Firefox') when 1 THEN 'Firefox' 
    else case strcnt(cs(user-agent),'MSIE+6') when 1 THEN 'IE 6' 
    else case strcnt(cs(user-agent),'MSIE+7') when 1 THEN 'IE 7' 
    else case strcnt(cs(user-agent),'MSIE+8') when 1 THEN 'IE 8' 
    else case strcnt(cs(user-agent),'MSIE+9') when 1 THEN 'IE 9' 
    else case strcnt(cs(user-agent),'MSIE+10') when 1 THEN 'IE 10' 
    else case strcnt(cs(user-agent),'IE+11') when 1 THEN 'IE 11' 
    else case strcnt(cs(user-agent),'+rv:11') when 1 THEN 'IE 11' 
    else case strcnt(cs(user-agent),'Opera') when 1 THEN 'Opera' 
    else case strcnt(cs(user-agent),'Safari/') when 1 THEN 'Safari' 
    else case strcnt(cs(user-agent),'iPhone+OS+5') when 1 THEN 'Safari' 
    else case strcnt(cs(user-agent),'iPhone+OS+6') when 1 THEN 'Safari' 
    else case strcnt(cs(user-agent),'iPhone+OS+7') when 1 THEN 'Safari' 
    else case strcnt(cs(user-agent),'CPU+OS+6') when 1 THEN 'Safari' 
    else case strcnt(cs(user-agent),'iTunes/11') when 1 THEN 'iTunes' 
    else case strcnt(cs(user-agent),'iTunes/10') when 1 THEN 'iTunes' 
    else 'Unknown' 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    End 
    as Browser, 
    COUNT(c-ip) as Hits 
    FROM '[LOGFILEPATH]' 

/* Dont display any cs(User-Agent) which are created by Bots */ 

WHERE cs(User-Agent) NOT LIKE '%Java%' 
AND cs(User-Agent) NOT LIKE '%moodle%' 
AND cs(User-Agent) NOT LIKE '%twitter%' 
AND cs(User-Agent) NOT LIKE '%mymmu%' 
AND cs(User-Agent) NOT LIKE '%MMU%' 
AND cs(User-Agent) NOT LIKE '%admant%' 
AND cs(User-Agent) NOT LIKE '%contextAd%' 
AND cs(User-Agent) NOT LIKE '%bingbot%' 
AND cs(User-Agent) NOT LIKE '%genieo%' 
AND cs(User-Agent) NOT LIKE '%proximic%' 
AND cs(User-Agent) NOT LIKE '%PageBot%' 
AND cs(User-Agent) NOT LIKE '%feedfetcher%' 
AND cs(User-Agent) NOT LIKE '%wordpress%' 
AND cs(User-Agent) NOT LIKE '%PictureBot%' 
AND cs(User-Agent) NOT LIKE '%WeSEE%' 
AND cs(User-Agent) NOT LIKE '%Sogou%' 
AND cs(User-Agent) NOT LIKE '%msnbot%' 
AND cs(User-Agent) NOT LIKE '%Mediapartner%' 
AND cs(User-Agent) NOT LIKE '%MagpieRSS%' 
AND cs(User-Agent) NOT LIKE '%Affectv%' 
AND cs(User-Agent) NOT LIKE '%Nutch%' 
AND cs(User-Agent) NOT LIKE '%SkimBot%' 
AND cs(User-Agent) NOT LIKE '%WhatWeb%' 
AND cs(User-Agent) NOT LIKE '%Googlebot%' 
AND cs(User-Agent) NOT LIKE '%Yahoo%' 
AND cs(User-Agent) NOT LIKE '%Netcraft%' 
AND cs(User-Agent) NOT LIKE '%AhrefsBot%' 
AND cs(User-Agent) NOT LIKE '%SemrushBot%' 
AND cs(User-Agent) NOT LIKE '%MJ12bot%' 
AND cs(User-Agent) NOT LIKE '%DotBot%' 
AND cs(User-Agent) NOT LIKE '%Vagabondo%' 
AND cs(User-Agent) NOT LIKE '%NetSeer%' 
AND cs(User-Agent) NOT LIKE '%PHP%' 

/* Dont display any cs(User-Agent) which has an entry of nothing */ 

AND cs(User-Agent) is NOT NULL 

GROUP by Browser 
ORDER by Hits DESC 
+0

https://notsomany.wordpress.com/2014/05/01/log-parser-studio-user-agent-browser-query/ – Ruslan

+0

https://gallery.technet.microsoft.com/Log-Parser-Studio- cd458765 – Ruslan

+1

あなたのコメントを編集して、あなたがコメントに入力したリンクを追加してください。 –

関連する問題