私はPython(私はかなりatmに新しいです)と解析したいいくつかのIISログがあります。 ..私は、ログあたり数千人を持っているログデータの唯一の2行は、ここにありますPythonの方法でIISログ解析にアプローチするにはどうすればよいですか?
#Software: Microsoft Internet Information Server 6.0
#Version: 1.0
#Date: 1998-11-19 22:48:39
#Fields: date time c-ip cs-username s-ip cs-method cs-uri-stem cs-uri-query sc-status sc-bytes cs-bytes time-taken cs-version cs(User-Agent) cs(Cookie) cs(Referrer)
1998-11-19 22:48:39 206.175.82.5 - 208.201.133.173 GET /global/images/navlineboards.gif - 200 540 324 157 HTTP/1.0 Mozilla/4.0+(compatible;+MSIE+4.01;+Windows+95) USERID=CustomerA;+IMPID=http://www.loganalyzer.net
1998-11-20 22:55:39 206.175.82.8 - 208.201.133.173 GET /global/something.pdf - 200 540 324 157 HTTP/1.0 Mozilla/4.0+(compatible;+MSIE+4.01;+Windows+95) USERID=CustomerA;+IMPID=http://www.loganalyzer.net
だから、これはただの短い例です:IISログのサンプルは次のようになります。
このログから、最も多くの接続を行ったクライアントIPアドレス、最もダウンロードされたファイルの数、最も訪問されたURIの数などのデータを抽出したいと思います。私たいのは...例えば、結果として、私はこのようなものを見たいのですが、いくつかの統計情報を取得することです:
file download_count
example1.pdf 9
example2.pdf 6
example3.doc 2
または
IP file hits
192.168.1.5 /sample/example1.gif 8
192.168.1.9 /files/example2.gif 8
私はわからないが、これをアプローチする方法ですPythonの方法で。最初は、ログの各行を分割してリストを作成し、それぞれのリストを大きなリストに追加すると思いました(2d配列として表示されます)。その後、私はその大きなリストから統計を抽出する段階に入りました。そして今、私は、そのデータから辞書を作り、dictキーとdict値で数えてみるのが良いかもしれないと思いますか?それはリストを使うよりも優れたアプローチですか?私がリストをうまく使うべきなら、どうやってそれに接近するべきですか?私は何をgoogle、私は何を探しますか?
だから私はこれが通常行われることになっているアイデアを探しています。ありがとう。仮定
google "python IIS parser"とトップ2のマットを見てくださいチェス(3番目はあなたの質問です) –