くれすのPerl日記 このページをアンテナに追加 RSSフィード

この日記の方針。

  1. この日記では、超初心者向けの内容は取り扱っておりません。モジュールの利用など、実践的な内容が中心となります。
  2. ここに貼られるソースは、基本的にそのままでは動かないものばかりです。各自の責任でご利用ください。
  3. 内容が間違っていることがあります。その際はご指摘いただけるとありがたいです。「検証してみたら違う結果が出た」などの報告も大歓迎です。
  4. perl -e die

2006-09-20 (Wed)酷いけど常套手段

[] bz2とそうじゃないのが混在している場合 20:33  bz2とそうじゃないのが混在している場合 - くれすのPerl日記 を含むブックマーク はてなブックマーク -  bz2とそうじゃないのが混在している場合 - くれすのPerl日記  bz2とそうじゃないのが混在している場合 - くれすのPerl日記 のブックマークコメント

ApacheのログをPerlで解析しようということになり、すべてのファイルを開いてそれぞれについて調べていこう・・・と思ったら。なんか古いログはbzip2で圧縮してあるらしくて。かといってハウジングサーバ勝手Perlモジュール*1入れるわけにも行かず。そこで思いついたのが

if( $filename =~ /\.bz2$/ ) {
    open( IN, "bzip2 -cd $filename |" );
}
else {
    open( IN, $filename );
}

・・・。

どうなんでしょうね。コレ。私はどうかと思いますがね


一時的に使うものだからまだ良いかもしれないけど、こんなのが常時稼動していたら大変なことに。

余談

その解析するログファイルというのが滅茶苦茶多い。試しに5日前のログを解析してみたら、それだけで2分かかった。単にユニークアクセスを数えるだけなんだけど。

で、その膨大な量のログが半年分。一体コレ解析するのに何時間かかるんでしょ。

*1:Compress::Bzip2

トラックバック - http://perl.g.hatena.ne.jp/Cress/20060920