この日記の方針。
- この日記では、超初心者向けの内容は取り扱っておりません。モジュールの利用など、実践的な内容が中心となります。
- ここに貼られるソースは、基本的にそのままでは動かないものばかりです。各自の責任でご利用ください。
- 内容が間違っていることがあります。その際はご指摘いただけるとありがたいです。「検証してみたら違う結果が出た」などの報告も大歓迎です。
- perl -e die
2006-09-20 (Wed)酷いけど常套手段
■ [メモ] bz2とそうじゃないのが混在している場合

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